我的代码后面有一些绑定到MyText
的文本框,我需要以下内容:
if(x)
//disable binding of textbox
if(y)
//enable back binding'
我知道可以取消绑定,如下所示:
BindingOperations.ClearBinding(MyTextBox, TextBox.TextProperty)
但如何禁用然后启用?有可能吗?
答案 0 :(得分:2)
您不能暂时“禁用”或“暂停”绑定。您必须删除绑定,然后再创建一个新绑定:
if (x)
BindingOperations.ClearBinding(MyTextBox, TextBox.TextProperty);
else if (y)
BindingOperations.SetBinding(MyTextBox, TextBox.TextProperty, new Binding("MyText"));
就绑定机制而言,没有其他或更好的方法。
你不应该首先清除绑定。