У меня есть список со списком DataTemplate, Style и ItemContainerStyle.
Это поле списка имеет SelectionMode = "Single".
Изначально все предметы имеют Opacity="0.7"
, когда выбранный предмет, я делаю его Opacity="1"
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Style.Setters>
<Setter Property="Opacity" Value="0.7"/>
</Style.Setters>
<Style.Triggers>
<DataTrigger Binding="{Binding IsEventLocked}" Value="False">
<Setter Property="IsEnabled" Value="False"/>
<Setter Property="Opacity" Value="0.2"/>
</DataTrigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Opacity" Value="1"/>
</Trigger>
</Style.Triggers>
</Style>
Но мне также нужно сделать все остальные (невыбранные) элементы с помощью Opacity="0.2"
, пока выбранный элемент не будет отменен.
Вкратце: [По умолчанию (Непрозрачность = 0,7)] -> [ItemSelected = {(SelectedItem: Непрозрачность = 1), (Все невыбранные элементы: Непрозрачность = 0,2)}] -> [Элемент не выбран (SelectedItem == null) = (Opasity = 0.7)]
Спасибо за предложения и идеи!