C# winform怎么实现子窗体关闭时刷新父窗体数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# winform怎么实现子窗体关闭时刷新父窗体数据相关的知识,希望对你有一定的参考价值。

方法1:在子窗体的colsing事件中,调用父窗体的刷新方法;
方法2:子窗体ShowDialog(),父窗体接收DialogResult.OK
时刷新;
方法3:增加程序
协调员的角色,设计界面协调者
对象实现。
参考技术A 父窗体呼出子窗体一般用ShowDialog,
你只要在这句话后面加上刷新啊之类的,那么关闭子窗体之后就会自动执行后面的语句咯
参考技术B 回答

步骤1:在父窗口中定义一个函数用来重新查询数据库,然后显示在界面上。步骤2:在子窗口中注释掉原来的默认的构造函数。然后写一个新的构造函数,将父窗口传递过来,在子窗口将要关闭的时候使用父窗口的引用调用父窗口的上面刚刚写的刷新函数。

提问

没懂 有代码吗

回答

这要看你刷新父窗体的具体内容(do something)一般我们是这么处理的:FormA form = new FormA();if (form.DialogResult == DialogResult.OK)do something;else if(form.DialogResult == DialogResult.Cancel)do Something;elsedo Something;

提问

括号里面是啥意思呀

回答

注释 和限词

c#用toolstripbutton打开子窗体

在父窗体中用button打开了子窗体 passflowform 在passflowform中怎么用toolstripbutton打开另一个子窗体 flowindexreveal 并且初始打开状态时最大化的 求大神指教啊

一个 工程 目录下的 Form 级别是并列的吧。
也就是说 可以用Form1 调用 Form2(让 From2成为 1的子窗体)
也可以用 Form2 调用 Form1。
那么你只要在 passflowform 的 toolstripbutton**_Click里写:
flowindexreveal t = new flowindexreveal();

t.StartPosition = **StartPosition.CenterParent;
t.Show();//t.ShowDialog();
至于 初始化 是 最大化。
窗体的一个属性就能设定。好像是 StartStatus ,或者是 StartSize ?就像 StartPosition 那样的。应该也是个 枚举 变量。枚举变量时,例如StartPosition属性。
输入 "t.StartPositon =" 再按 空格 ,系统会提示这个 枚举变量 的可用枚举值。
参考技术A 双击toolstripbutton,在事件中写
flowindexreveal f=new flowindexreveal();

f.show();
就可以实现打开flowindexreveal窗体了。至于最大化,只要把flowindexreveal窗体属性WindowState中的Normal改为Maximized就行了。

以上是关于C# winform怎么实现子窗体关闭时刷新父窗体数据的主要内容,如果未能解决你的问题,请参考以下文章

c#子窗体控制父窗体的显隐

C#子窗体实现主窗体的刷新

在父窗体中用showModalDialog方式打开一个页面,并在页面中删除一条记录,成功后刷新本页面,再关闭本页面

js 关闭子窗体时如何刷新父窗体

C# winform 父窗口子窗口按钮控制

php 窗体关闭以后怎样自动刷新父页面