直接切入主题

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

有时候同一个项目下我们可能会使用多个窗体,窗体间方法互相调用也不可避免,好了,使用无参无返回值的方法,开始上图

1、新建一个winform项目Form1,并再添加一个窗体Form2;拖入button和textbox,如下

C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第1张C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第2张

2、先编辑Form2,定义属性存放无参无返回值的方法,重载Form2的构造函数,处理相关方法

C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第3张

 

C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第4张
1  public   Form2(List<Action> a) //public List<Action>  Form2m(params Action[] a)
2         {
3             ll.Add(a1);
4             ll.Add(a2);
5             lmF1 = a;
6             InitializeComponent();
7             
8         }
重载Form2构造函数

 3、按钮单击事件调用Form1的方法

C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第6张

4、接下来编辑Form1的代码,这个就更简单了:

先定义List<Action>集合,用于存放无参无返回值的方法们....

实例化窗体按钮的单击事件实例化Form2对象并显示

然后就可以愉快的测试了

Form1主要代码如下

C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第7张

 

 测试结果:

C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用 随笔 第8张

 

源码已开源到GitHub,欢迎Star,欢迎互相交流:QQ 649499016

源码下载:https://github.com/DefineCS/MethodCallsBetweenForms/tree/master/MethodCallsBetweenForms

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄