我在vs2005中使用vb .net
作为简化示例,我将对象绑定到像这样的文本框
Dim tobject as object
Dim WithEvents obinding As Binding
Private Sub mySub(ByVal sender As System.Object, ByVal e As System.EventArgs)
tobject = "string"
obinding = New Binding("text", tobject, "")
TextBox1.DataBindings.Add(obinding)
End Sub
从这个msdn信息看来这应该有用吗? http://msdn.microsoft.com/en-us/library/system.windows.forms.binding.aspx
“如果将导航路径设置为空字符串,则将在基础数据源对象上调用ToString方法”
当我运行sub时,文本框确实更新以反映tobject的值,但对tobject的后续更改不会更新文本框
对于某些背景,因为这可能是不寻常的。我们只是将其称为理解语言功能的练习。我知道我可以创建一个自定义类并绑定到那个但是我必须引用一个属性
tobject.value = some_value
或索引器,如果value是默认属性
tobject(1) = some_value
而我只是想引用对象(并将数据绑定)
tobject = some_value
答案 0 :(得分:0)
Object
不支持INotifyPropertyChanged
,因此它不会告诉绑定刷新值。
如果您创建自己的课程,正如您所提到的那样,您也需要在其中实施INotifyPropertyChanged
,如果您希望这样做的话。