2013-07-04 42 views
0

我在C#中是begginer,我有两种形式,都是按钮。我想单击form1中的button,然后在该按钮上单击我想使按钮在form2unclickabledisabled但仍然visible。有没有什么简单或可以理解的方式可以肯定的工作?禁用窗体加载按钮

非常感谢你提前。

+0

有2种形式之间的关系?即Form1是Form2的父级? – OCDan

+1

你是否从Form1中打开Form2?如果是这样,我会将实例作为字段存储在form1中,然后可以使用它来访问Form2中的属性或方法。所以你可以提供一个公共方法'public void EnableButton(bool enabled){this.ButtonXY.Enabled = enabled;}' –

+0

是的,Form1打开Form2 – Marek

回答

1

是的,这并不难,您必须确保在form1中引用form2的实例,或直接引用form2实例的按钮。

一个例子可以是(考虑伪代码,而不是一个完整的):

class MyForm1 
{ 
    public MyForm2 Form2 { get; set; } 

    protected OnButton1Clicked() 
    { 
     Form2.ToggleButton(); 
    } 
} 
class MyForm2 
{ 
    public ToggleButton() 
    { 
     button2.Enabled = !button2.Enabled; 
    } 
} 

// Main 
form1 = new MyForm1(); 
form1.Form2 = new MyForm2();