2

ComboBox绑定了一个名为 的 ViewModel 属性Property

Property是一个类型描述符。

当用户更改 中的值时ComboBoxProperty会更新。

在 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>
4

1 回答 1

0

您可能需要编写一个在“属性”值更改时调用的转换器。该转换器可以是“TypeDescriptior 到 Visibility 转换器”。以上不起作用的原因是因为'PropertyType'不会触发INotifyPropertyChanged。

于 2009-11-23T21:30:48.737 回答