日期:2014-05-18  浏览次数:20807 次

新手c#程序问题,如何在副窗口关闭的同时更新主窗口的listbox控件
不知道标题中描述的是否清楚,想发图又发不上来.

也可以这样问,有两个窗体,其中一个窗体一直存在,起个名字是fromA,另一个窗体fromB,作用是向数据库里写入信息,当我点击button的时候,fromB关闭,并写入信息到数据库,同时,窗体fromA中的控件listbox获得保存的信息,并显示出来

我实现不了的地方在于,控件listbox不能在信息写入数据库的同时就更新,关闭窗体再开才可以;

有一个思路是用time控件,不停的刷新listbox,虽然能实现,但是太消耗资源,不停的读取数据库,太不可取,有别的方法吗

------解决方案--------------------
private void fromA_Activated(object sender, EventArgs e)
{
bind ();绑定数据到listbox
}
保证可行
------解决方案--------------------
FromB窗体的构造函数是:
FromA fA=null;
public FromB(FromA fA)
{
this.fA=fA;
}

在FromA窗体的某一个按钮事件上写上以下代码:
FromB fB=new FromB(this);
if(fB.ShowDialog()==DialogResult.OK)
{
this.listbox.items.add(FromB的某个值);
}

在FromB的button按钮事件上写下:
this.DialogResult = DialogResult.OK;