使用XAML清除绑定

时间:2012-05-28 13:17:19

标签: wpf xaml data-binding triggers

我正在创建一个wpf应用程序,它包含一个文本框。 当文本框被禁用时(默认状态)我将它绑定到某个东西,但当用户双击文本框时,它将其状态更改为启用,用户可以编辑它。 但是当我在启用文本框后键入内容时,由于触发器(可能是ui正在更新并且触发器与他一起),它每秒都会被删除。当我使用代码并在双击后清除绑定它工作正常。但是我不想通过代码来实现它,我知道我只是错过了让XAML工作的小东西。

这是我目前的XAML:

<Style.Triggers>

    <Trigger Property="TextBox.IsEnabled" Value="False">

        <Setter Property="Text" Value="{Binding some binding}"/>

    </Trigger>

    <Trigger Property="TextBox.IsEnabled" Value="True">

        <Setter Property="Text" Value="{x:Null}"/>

    </Trigger>

</Style.Triggers>

谢谢!

1 个答案:

答案 0 :(得分:2)

设置Binding但将其方向更改为OneWayToSource会有帮助吗?

<Style.Triggers>

    <Trigger Property="TextBox.IsEnabled" Value="False">
        <Setter Property="Text" Value="{Binding someBinding}"/>
    </Trigger>

    <Trigger Property="TextBox.IsEnabled" Value="True">
        <Setter Property="Text" Value="{Binding Path=someBinding, Mode=OneWayToSource}"/>
    </Trigger>

</Style.Triggers>