HOW TO:使用觸發程式設定 ListView 中的選取項目樣式
本範例說明如何定義 ListViewItem 控制項的 Triggers,以便於 ListViewItem 的屬性值變更時,ListViewItem 的 Style 也會變更以進行回應。
範例
如果您要 ListViewItem 的 Style 進行變更以回應屬性變更,請針對 Style 變更定義 Triggers。
下列範例會定義 Trigger,當 IsMouseOver 屬性變更為 true 時,它會將 Foreground 屬性設定為 Blue,並會變更 Cursor 以顯示 Hand。
<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,當 ListViewItem 是選取的項目並具有鍵盤焦點時,它會將 ListViewItem 的 Foreground 屬性設定為 Yellow。
<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>