c#中怎么在子窗体中调用父窗体中的函数

2024-12-02 17:35:20
推荐回答(5个)
回答1:

好好思考下,别误人子弟!

为了回答这个问题,特意写了篇文章说明,请看正确处理方式:

C# 子窗体中调用父窗体中的方法(或多窗体之间方法调用)
http://www.csframework.com/archive/2/arc-2-20110805-1771.htm

回答2:

你把父窗体和子窗体都理解为一个类来做你就会发现原来是比较简单的。因为你现在所有做的这些东西都是在private里面做的。所以说在子窗体里面是无法访问父窗体的内容。如果你当作是类来做的话,你只需要将private改为public就可以访问了。

回答3:

父窗体是是form1,子窗体是form2
form1中打开form2:Form2 frm2 = new Form2();
frm2.Owner=this;
frm2.show();
子窗体调父窗体方法:
form2中 Form1 frm1;
frm1 = (Form1) this.Owner
frm1.indata()

回答4:

有两种方法:
1、利用消息,子窗体完事后,发一个消息给父窗体,父窗体接受到消息后调用indata
2、利用子窗体的parentform这个属性,并转成父窗体类型,就可以调用了。期间还涉及到子窗体是静态的还是实例的。看着调试

回答5:

是web么?其实你可以利用父窗体showmodal的返回值来的用js刷新或者触发重新载入数据

你可以搜索 asp.net 子窗体刷新,就能找到一堆代码