如何从 GridViewItem 中删除可见的默认焦点,UWP-XAML

How to remove defaul focus visual from GridViewItem, UWP-XAML

我正在使用最新发布的 public UWP SDK - v.14393 为 Xbox 编写 UWP 应用程序。

我在设置应用程序样式时遇到了一些问题 - 现在使用此处描述的模板为 GridView 的 GridViewItem 创建自定义焦点视觉对象 https://msdn.microsoft.com/en-us/library/windows/apps/mt299136.aspx(不是 'ListViewItemExpanded')

因此,主要问题是 - 如何使用 ListViewItemPresenter 作为 ControlTemplate 删除 GridViewItem 模板的默认焦点视觉状态(屏幕截图上的红色边框)。

请参阅此处的示例项目 - https://github.com/bondarenkod/bugs/blob/uwp-gridview-default-focus-visual/visualstatestest/visualstatestest/MainPage.xaml

您看到的红色边框不是焦点视觉效果,而是选择的视觉效果。要删除此边框,您可以将 SelectedBackground 属性 设置为 Transparent like

<ListViewItemPresenter SelectedBackground="Transparent" .../>

除此 属性 之外,还有其他几个属性,如 SelectedPointerOverBackground and SelectedPressedBackground 可能会影响边框的颜色。这些属性以"Background"结尾,您可能还需要根据您的要求更改这些属性。