此示例演示如何为Triggers控件定义ListViewItem,以便当ListViewItem属性值发生变化时,响应地改变Style的ListViewItem。
示例:
如果希望Style的ListViewItem在属性更改时发生变化,请为Triggers更改定义Style。
以下示例定义了一个Trigger,它将Foreground属性设置为Blue,并在Cursor属性更改为Hand时更改IsMouseOver以显示true
。
<Style x:Key="MyContainer" TargetType="{x:Type ListViewItem}">
<Setter Property="Margin" Value="0,1,0,0"/>
<Setter Property="Height" Value="21"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Foreground" Value="Blue" />
<Setter Property="Cursor" Value="Hand"/>
</Trigger>
</Style.Triggers>
</Style>
以下示例定义一个MultiTrigger,当Foreground是选定项并具有键盘焦点时,这个MultiTrigger会设置Yellow的ListViewItem属性为。
<Style x:Key="MyContainer" TargetType="{x:Type ListViewItem}">
<Setter Property="Margin" Value="0,1,0,0"/>
<Setter Property="Height" Value="21"/>
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="true" />
<Condition Property="Selector.IsSelectionActive" Value="true" />
</MultiTrigger.Conditions>
<Setter Property="Foreground" Value="Yellow" />
</MultiTrigger>
</Style.Triggers>
</Style>