从类中更改主窗体中的按钮属性

时间:2015-10-19 13:14:24

标签: c# .net windows

我想问一下如何从类中更改主窗体中的按钮属性。 我的表格有button called Call。此按钮已禁用。 我有班级正在检查网络连接。我的程序何时连接我希望从类网络启用按钮调用,但我无法更改此类的属性。

代码

public class network
{
...
MainForm frm = new MainForm();
..
.
.
  if(isNetwork==true)
   {
    frm.Call.Enabled = true;  //nothing happends, button is still disabled
     methodUpdate();  // second solution with calling method, but it   
                         doesn't work too ...
 }
    }

的MainForm

...

public void methodUpdate()
{
 Call.Enabled = true;
}

但是当我在主窗体中有另一个按钮并且在方法中单击时我有methodUpdate()一切正常;

button click method in MainForm
private void button1_Click(object sender, EventArgs e)
        {
           methodUpdate(); //this is working well

        }

1 个答案:

答案 0 :(得分:0)

您是否尝试通过构造函数将MainForm放入网络类?

在您的网络类中:

public class Network
{
  private MainForm _frm; 
  public Network(MainForm frm)
  {
    _frm = frm;
  }
  .
  .
  .
    if(isNetwork == true)
    {
      _frm.Call.Enabled = true;
    }
}

在MainForm中实例化网络对象时,你会调用类似的东西:

public Network myNetwork = new Network(this);