再做数据库开发的时候,经常会遇到表带上明细表,比如,一个学校有好多系,每个系又有好多专业...。

在winform中,都会使用datagridview来显示数据,现在就来说说如何实现之间的联动。比如现在有两张表,

winform 实现两个datagridview之间的数据联动winform 实现两个datagridview之间的数据联动

而child中的id是参照parent表中的id。

先新建一个DataSet.xsd文件winform 实现两个datagridview之间的数据联动

winform 实现两个datagridview之间的数据联动

将parent和child表添加进来。如果在数据中已经添加了外键,则vs会自动生成,如果没加,可以自己建立,

winform 实现两个datagridview之间的数据联动

新建一个窗口,放两个datagridview,以及DataSet,和childTableAdapter和parentTableAdapter对象。

winform 实现两个datagridview之间的数据联动

设置parent的DataSource为dataSet1,DataMember为dataSet1中的parent表。

winform 实现两个datagridview之间的数据联动

设置child的DataSource也为dataSet1,以及DataMember为parent.parent_child_id

winform 实现两个datagridview之间的数据联动

设置完之后最后两句代码在窗体的load中的事件里写上

winform 实现两个datagridview之间的数据联动

注意这两句不能换顺序,先有主表,再有参照表。

可以看看效果了:

winform 实现两个datagridview之间的数据联动

winform 实现两个datagridview之间的数据联动

winform 实现两个datagridview之间的数据联动

如果要对主表进行条件筛选,建议parent的DataSource绑定到dataSet1.parent.DefaultView。到时只要设置dataSet1.parent.DefaultViewde的RowFilter值即可。

还可以参照http://blog.csdn.net/fangxing80/article/details/2304047这个博客。

相关文章:

  • 2021-11-05
  • 2021-08-18
  • 2022-12-23
  • 2022-12-23
  • 2021-05-22
  • 2021-12-22
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-05-28
  • 2022-12-23
  • 2021-12-22
  • 2021-05-25
相关资源
相似解决方案