Практическое руководство. Применение триггеров для определения стиля выбранных элементов в ListView
В этом примере показано, как можно определить 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 объекта ListViewItem значение 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>
См. также
.NET Desktop feedback
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по