在Windows窗体中调用公共方法

时间:2012-08-15 15:57:46

标签: c# winforms mdi public-method

我有1个MDI表单,其中包含1个面板控件,1个表单带有1个按钮,用于使MDI中的面板不可见。

MDI表格中的代码:

    public void displayInit()
    {
        panel1.Visible = false;
    }

Form1中的代码:

        private void button1_Click(object sender, EventArgs e)
    {
        displayInit();
    }

错误是:当前上下文中不存在名称“displayInit”, 有什么建议吗?

2 个答案:

答案 0 :(得分:4)

尝试引用父级(并将其强制转换):

((MyMDIForm)this.MDIParent).displayInit();

这可能不是最好的方法。考虑让子表单向MDI父项提出事件。分离关注点。

答案 1 :(得分:0)

方法displayinit()实例方法,因此您需要一个实例从

调用它
MyMDIForm.displayInit();

构造MDI表单时,请保留对它的引用,并在调用它的方法时使用该引用。