C# 窗口间的通讯

来源:互联网 发布:玛祖铭立 知乎 编辑:程序博客网 时间:2024/06/03 19:31

最近正在学习C#   感觉比易语言好用多了,易语言我真的用吐了,动不动就是模块压根没有底层的东西,就算是有也是高手们反编译的,细节一概不知。

老鸟勿喷,发帖纯属站位,以后查找方面

窗口间的通讯我用的是委托

1.定义一个委托

public delegatevoid F1weituo(int s)//有参数的委托public event F1weituo F1shijian;//定义一个委托事件  

2.实例化一个委托事件

Form2 fh = new Form2(s);//创建窗口2            fh.Show();//显示窗口2            F1shijian += fh.setF2;//把委托事件和窗口2的setF2()的函数关联起来

3.在子窗口Form2 的代码里写个函数

 public void setF2(int s)        {            int t = (50 - s) / 10;            this.Text = "窗口" + t.ToString() + "秒后关闭!!!";            if (s==49)            {                this.Close();//这个窗口关闭            }        }

4.在主窗口Form1的需要传数据的地方调用这个事件就可以了

F1shijian(s)//s是要传入子窗口的数据
这个是窗口关闭的倒计时

 for (int i=0;i<50;i++)            {                F1shijian(i);                Thread.Sleep(100);            }


原创粉丝点击