DataTrigger无法按预期工作

时间:2009-11-23 18:59:41

标签: wpf styles datatrigger

我有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>

1 个答案:

答案 0 :(得分:0)

您可能需要编写一个转换器,当“Property”的值发生变化时,该转换器会被调用。转换器可以是'TypeDescriptior to Visibility转换器。 上述原因不起作用的原因是'PropertyType'不会触发INotifyPropertyChanged。