我有一个强类型的dset,有两个数据表:父和子,有一个关系以你期望的方式链接它们(例如父母有很多孩子)。
在我的儿童详细信息表单上,我显示了有关当前孩子的大量信息,w /绑定调用如下:
me.txtBirthDate.DataBindings.add(New Windows.Forms.Binding("Text", MyDataset, "Child.Birthdate"))
但我还想展示孩子父母的一些信息 - 比如父母的名字。我试过了:
me.txtParentName.DataBindings.add(New Windows.Forms.Binding("Text", MyDataset, "Child.Parent.Name"))
和
me.txtParentName.DataBindings.add(New Windows.Forms.Binding("Text", MyDataset, "Parent.Name"))
但这些都会产生一个空白文本框。
我当然可以将父属性直接放在Child DataTable&用基础数据库表之间的连接结果填充它们,但我想避免它,如果可能的话(我的真实应用程序只涉及几个父母,每个很多很多孩子和我不想成为移动这么多不必要的数据)。
这可能吗?
非常感谢!
-Roy
答案 0 :(得分:0)
我通常在BindingSource
和控件之间使用DataSet
。使用这种方法时,如果我想要绑定到不同表中的相关行的控件,我创建一个新的BindingSource
,它指向相关的行(他的DataSource
属性是原始的BindingSource
,他的DataMember
是父表),然后将其他控件绑定到第二个BindingSource
。
我通常在设计器视图中完成所有操作,在我继续创建这些BindingSource
对象时。
希望有所帮助。