用事件,在addform里,定义委托,flesh(object data),事件,在main里,注册事件。在注册事件里,绑定数据源。
方法 1、在插入数据库的方法执行成功后将新插入的数据添加进 ListView 绑定的数据源中;
方法 2、使用 SqlDependency 监控数据表变动,收到通知后,读取更新的记录添加到 ListView 绑定的数据源中;
谢谢 ,我是用datatable作为LV的数据源的 ,是要把新增的数据插入到Datatable中么?
@湫楓 謃箜: 是的。
重新绑定是最简单的,form里公开一个重新绑定的public方法,插入窗体完成后,直接调用这个方法即可
form? 能具体说一下 么?是bind() 方法?这是winform 不是webform .
谢谢
@湫楓 謃箜:
废话,我当然说的是winform.
如果你在插入窗体可以获取到对listview所在窗体的实例的引用,就直接可以调用里面的public方法。如果不能获取到窗体引用,就在实例化listview所在窗体后,在其它类,比如Program类中注册一个静态对象之类的来获取,或者通过其它方法应该是可以获取到这个实例的。你只要在定义的public方法里刷新listview就行了。
同一应用程序跨窗体通信在winform中很简单的,也可以通过其它很多方法。
@沧海一杰: listview是在主窗体中 (Main中),我在插入操作的窗体(AddForm)的构造函数中传入一个Main实例,并把该实例赋值给AddForm的成员,但是编译出错~~~~ 提示不包含main中的成员。
@湫楓 謃箜: 你的做法是对的,应该不会错呀,你再检查下,思路是对的。