绑定控件的设置值后,WPF条件绑定失败

时间:2014-07-10 21:36:33

标签: c# wpf xaml mvvm

我在同一网格中有3个WPF用户控件,一个像带有两个单选按钮的单选按钮组,另外两个像TextBox。我的目的是:如果选择第一个单选按钮,允许用户在TextBox1中输入,如果选择了第二个单选按钮,则禁用TextBox1中的用户输入并将其Text属性绑定到TextBox2.Text。我使用了数据触发器来实现这一目标。绑定控件的XAML样本如下所示:

<my:TextControl Name="TextControl1">
        <my:TextControl.Style>
            <Style TargetType="{x:Type my:TextControl}">
                <Style.Triggers>
                    <DataTrigger Binding="{Binding ElementName=MyRadioButtons1, Path=IsFirstRadioButtonChecked}" Value="true">
                        <Setter Property="IsEnabled" Value="true"/>
                        <Setter Property="Text" Value=""/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding ElementName=MyRadioButtons1, Path=IsSecondRadioButtonChecked}" Value="true">
                        <Setter Property="IsEnabled" Value="false"/>
                        <Setter Property="Text" Value="{Binding ElementName=TextControl2, Path=Text}"/>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </my:TextControl.Style>
    </my:TextControl>

我测试了我的代码,它在第一点按预期工作。然后我选择第一个单选按钮,在TextControl1中键入内容,然后选择第二个单选按钮。轰!......但什么也没发生。 TextControl1中的值仍然是我键入的文本而不是TextControl2的Text。看来TextControl1无法再绑定到TextControl2,无论我在单选按钮组中选择什么选项。任何人都知道这种情况?? THX

0 个答案:

没有答案