2010-07-17 86 views
1

我正在开发基于Windows的.net应用程序。如何从另一个窗体窗体的事件调用窗体窗体的功能?

我有两种形式。 Form1在form1中发生事件时被实例化并显示。

public partial class Form1 : Form 
{ 
    ... 
    private void button1_Click(object sender, EventArgs e) 
    { 
     .... 
    } 
    public void button2_Click(object sender, EventArgs e) 
    { 
     Form2.parent = this; 

     Form2 f2 = new Form2(); 

     f2.show(); 
    } 

} 

public partial class Form2 : Form 
{ 
    ... 
    public static Form parent; 
    private void button3_Click(object sender, EventArgs e) 
    { 
     .... //want to call Form1's button1_Click() function. 
    } 

} 

现在在Form2的button3_Click()函数中,我想调用Form1的button1_Click()方法。

我试图

parent.button1_Click(button3,null); 

,但是这是行不通的。

请帮忙!

回答

3

您需要声明parentForm1类型,而不是Form

我会亲自把它的构造虽然,而不是它作为一个公共静态变量:

public partial class Form1 : Form 
{ 
    public void button2_Click(object sender, EventArgs e) 
    { 
     Form2 f2 = new Form2(this); 
     f2.show(); 
    } 
} 

... 

public partial class Form2 : Form 
{ 
    Form1 parent; 

    public Form2(Form1 parent) 
    { 
     this.parent = new parent; 
    } 
} 
+0

谢谢! 它的工作... 非常感谢你..!:) – Akshay 2010-07-17 06:14:08

+0

也谢谢你。有同样的问题! :) – 2013-05-21 10:48:03

相关问题