WPF:删除样式列表框中焦点项周围的虚线边框

Veg*_*gar 81 wpf xaml listbox focus border

我有一个带有自定义controlIemplate的水平列表框.聚焦时,所选项目将获得虚线框.谁知道如何摆脱它?

Job*_*Joy 158

您需要将每个ListBoxItem的FocusVisualStyle设置为null.步骤如下

1)为ListBox创建ItemContainerStyle

<Style x:Key="ListBoxItemStyle1" TargetType="{x:Type ListBoxItem}"> 
   <Setter Property="FocusVisualStyle" Value="{x:Null}"/> ....
Run Code Online (Sandbox Code Playgroud)

2)将该样式设置为Listbox

<ListBox ItemContainerStyle="{DynamicResource ListBoxItemStyle1}"
Run Code Online (Sandbox Code Playgroud)

  • 这个答案非常有用,但是这里有很大的优势:如果你使用这种方法,你的控件**将不会显示任何指向哪个指针集中在Windows 8中!**在Windows 7中禁用了`FocusVisualStyle`,像按钮这样的控件仍然保留了一个蓝色的整体亮点,但在Windows 8中,完全不可能分辨出一个组中的哪个控件是关注的. (5认同)
  • 在大多数情况下,您也可以只添加 `FocusVisualStyle="{x:Null}"`。 (3认同)