在按钮上显示另一个窗体中的面板c#

时间:2017-11-02 09:36:49

标签: c# static panel

我正在开发一个c#程序,我希望当一个按钮在另一个按钮上单击时,该面板会出现在表单上。因此,当在form2上单击添加按钮时,面板请求有关详细信息的内容将显示在表单1上。

我目前在form1中设置了一个静态方法,可以从form2访问 - 但是由于panel.Show()非静态,它不允许我在函数中使用它。

在Form1中我有:

public static void showPanel()
{
   panel.Show()
}

在我的第二种形式中,我有以下内容:

private void btn_add_Click(object sender, EventArgs e)
{
   form1.showPanel();
   this.Hide();
}

我测试过只是让静态功能显示一个有效的消息框。是否可以按照我想要的方式进行,或者我需要退一步并尝试不同的技术?

1 个答案:

答案 0 :(得分:0)

我们是否正在讨论第二种形式的新实例,如果是这样,您可以尝试使用以下方法实例化新表单:

Form newForm = new YourFormName(potential parameters); newForm.showPanel(); newForm.Show();

如果要在打开的表单上执行表单,可以为第一个表单提供第二个表单的引用(带实例的字段)。或者您可以尝试使用:Application.OpenForms。如果你给它[1]它可能会给你第二个开放形式。您还可以使用.OfType来获取正确的表单,以防您的表单订单始终不变。