我如何实现以下目标:
<ComboBox
IsEnabled="{Binding bVisibilty = AnotherCollection.Count > 0 ? true:false}"/>
我可以使用一个将转换计数转换为boolen的转换器,但是有比在所有地方过度使用转换器更好的方法。
答案 0 :(得分:3)
您可以使用样式触发器:
<ComboBox >
<ComboBox.Style>
<Style TargetType="ComboBox">
<Style.Triggers>
<DataTrigger Binding="{Binding AnotherCollection.Count}" Value="0">
<Setter Property="Visibility" Value="Collapsed"/>
</DataTrigger>
</Style.Triggers>
</Style>
</ComboBox.Style>
</ComboBox>
显然,AnotherCollection需要是一个ObservableCollection,因此每次添加项目时都会通知用户界面<删除它
答案 1 :(得分:2)
您可以绑定到ViewModel上的Property,并将boolean和INPC逻辑放在viewmodel中