我有一个table text
项目的自定义text
。
我想删除或更改视觉效果以供选择。
到目前为止,我尝试将自定义ListView
添加到我的ItemTemplate
:
ItemContainerStyle
在资源下,定义样式如下:
ListView
不幸的是,这不起作用。我错过了什么?
答案 0 :(得分:1)
尝试覆盖系统颜色的这种方法在Windows 8及更高版本上不起作用。 您需要修改ListViewItem容器的ControlTemplate。
请参阅:ListView Selected Item Style Override
一个例子:
<ListView>
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBoxItem}">
<Border x:Name="RootBorder">
<ContentPresenter/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="RootBorder" Property="BorderBrush" Value="Red"/>
<Setter TargetName="RootBorder" Property="BorderThickness" Value="1"/>
</Trigger>
<!--<Trigger Property="IsSelected" Value="True">
<Setter TargetName="RootBorder" Property="Background" Value="LightBlue"/>
</Trigger>-->
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListView.ItemContainerStyle>
<ListViewItem>123</ListViewItem>
<ListViewItem>456</ListViewItem>
<ListViewItem>789</ListViewItem>
</ListView>