我有ComboBox
绑定到名为Property
的ViewModel属性。
Property
是TypeDescriptor。
当用户更改ComboBox
中的值时,Property
会更新。
在UI上我想要隐藏或显示不同的控件:文本框,组合框,日期选择器等。
问题是,DataTrigger
没有按预期工作。
<Style x:Key="textboxStyle"
TargetType="{x:Type TextBox}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=Property.PropertyType}"
Value="{x:Type Type={x:Type sys:String}}">
<Setter Property="Visibility"
Value="Visible" />
</DataTrigger>
</Style.Triggers>
</Style>
答案 0 :(得分:0)
您可能需要编写一个转换器,当“Property”的值发生变化时,该转换器会被调用。转换器可以是'TypeDescriptior to Visibility转换器。 上述原因不起作用的原因是'PropertyType'不会触发INotifyPropertyChanged。