2009-06-17 75 views
0

我有一个强类型的dset,带有两个数据表:父项和子项,带有关系,它们按照您期望的方式关联起来(例如,有一对多子女)。Winforms .net 2.0:将文本框绑定到父项属性

在我的孩子详细信息的形式,我将展示大量的信息对当前儿童,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")) 

但这些都导致一个空白文本框。

我当然可以将父属性直接放在子数据表中&填充他们瓦特/底层数据库表之间的联接的结果,但我想避免,如果这是可能的(我真正的应用程序只涉及几个家长每个w /许多孩子&我不想移动那么多不必要的数据)。

这可能吗?

非常感谢!

-Roy

回答

0

我通常使用的DataSet和控制之间的BindingSource。当使用这种方法时,如果我有要从另一个表中绑定到相关行的控件,我创建一个新的BindingSource,它指向相关行(他的DataSource属性是原始BindingSource,他的DataMember是父表),然后将其他控件绑定到第二个BindingSource

我通常在设计师视图中完成所有这些工作,我只是在创建这些对象时创建这些对象。

希望有所帮助。

+0

非常感谢 - 我尝试了BindingSource,但它并不明显,我怎么能用它来获得父母。 我刚刚结束处理孩子的CurrencyManager.CurrentChanged事件,并在那里调用.GetParentRows。 IOW,我没有使用这些字段的绑定。 感谢您花时间! – 2009-06-26 03:15:56

相关问题