双向数据绑定:更新不更新绑定属性的文本框
我将UserControl
的文本框数据绑定到属性,如下所示。双向数据绑定:更新不更新绑定属性的文本框
<TextBox Name="txtData" Text="{Binding MyData, Mode=TwoWay}"/>
但是,当我点击提交,在txtData
文本框的用户控件中,userControl.MyData
返回null
输入一些文字后,承载用户控件的页面上的按钮。我应该怎么做才能将txtData.text
值分配给除TextChanged
事件以外的其他房产?
根据您的意见,当TextBox.Text
更改时,您希望更新userControl.MyData
。
从结合透视TextBox.Text
是目标和MyData
是如此严格的说,这是一个OnWayToSource
结合(源=>到迈德特)源 - 所以应该没有必要实施INotifyPropertyChanged
。但这不是问题。
当前写入绑定的方式,MyData
属性期望在TextBox
的DataContext
上找到 - 是这种情况吗?您可以修复数据上下文或可能使用其他绑定源,例如ElementName或RelativeSource - 很难说没有看到更多的xaml。
您也可以考虑在绑定上设置UpdateSourceTrigger=PropertyChanged
。
是的,是这样。 'MyData'属性期望在'TextBox'的'DataContext'上找到 – devnull 2012-03-08 08:10:13
你确定这个绑定是正确的吗?如果你在用户控件的构造函数中设置了MyData的值,你会在文本框中看到它吗?如果是,请分享整个XAML。 – 2012-03-08 01:00:13
不,它不是!我没有得到什么错误。 – devnull 2012-03-08 01:07:13
阅读关于[数据绑定](http://msdn.microsoft.com/en-us/library/ms752347.aspx)首先,然后如果你没有线索... – 2012-03-08 01:16:29