使用C#写的一个程序 在dategrateview显示了数据,这个数据只是体现了大概的信息,现在需要单击或者是双击选中的数据行 显示详细数据。
使用了点击事件绑定 但是没有办法实现 有没有人知道
选中详细数据是如何显示出来的?弹窗?
双击事件
DataBindingSource bs=new DataBindingSource();
bs.DataSource=你的数据源(比如List<Testobj>)
dgv.Datasource=bs;
//点击事件中
Form2 form2=new Form2(bs);把相同数据源传递过期
那么你当前点击的数据在form2的访问方式
var currenobject=(Testobj) bs.Current
//我这个是自己手动获取对象,如果是自动绑定的,你可以直接绑定到显示UI,不必使用Current访问,自动绑定的过程参考
https://docs.microsoft.com/zh-cn/previous-versions/visualstudio/visual-studio-2008/ms404320(v=vs.90)
之所以选用BindingSource做为中转是因为官方本身已经做了很多智能的同步操作,我们可以省掉很多同步功能
比如你点击dgv一行,那么Current属性就自动同步对应到那行。比如后面那个连接资料里告诉你也不需要手动一个一个赋值,只需要直接绑定。(当然他这里使用的是代码手动绑定,其实呢也有直接在IDE用鼠标点点就可以绑定的方法,不过大家都不喜欢被叫控件崽,所以这种拖控件用鼠标点的方式被刻意遗忘了,就连官方都顺应潮流不太提了)