/ / Jak wyłączyć element listBox databound na podstawie wartości właściwości? - wpf, xaml, listbox, datatemplate

Jak wyłączyć element listBox databound na podstawie wartości właściwości? - wpf, xaml, listbox, datatemplate

Czy ktoś wie, czy i jak można wyłączyć elementy w databound ListBox na podstawie wartości nieruchomości?

Najlepiej chciałbym DataTrigger który, gdy określona właściwość jest false, wyłącza ten element (uniemożliwia wybór) bez wpływu na inne elementy w ListBox.

<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Name="textBlock" Text="{Binding Description}"/>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding IsEnabled}" Value="False">
??
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>

Odpowiedzi:

63 dla odpowiedzi № 1

Możesz użyć ItemContainerStyle:

<ListBox>
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Style.Triggers>
<DataTrigger Binding="{Binding YourPropertyName}" Value="False">
<Setter Property="IsEnabled" Value="False"/>
</DataTrigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>