【问题标题】:C# Open one form from another? [duplicate]C# 从另一个表单打开一个表单? [复制]
【发布时间】:2016-05-26 16:46:59
【问题描述】:

我想知道您将如何打开您已经从第一个表单制作的表单。例如,在一个 .vb 项目中,我可以创建两个表单,然后简单地执行 form2.Show(),它会显示表单以及我添加到其中的所有内容,等等。在 c# 中,你会怎么做?到目前为止我已经这样做了,因为我还没有找到其他方法:

private void menuBar_CheckForUpdates_Click(object sender, EventArgs e)
{
    Form updateForm = new Form();
    updateForm.Show();
}

但是,我希望能够打开我手动创建的表单,并向其中添加控件。我该怎么做?我宁愿不要将所有控件放在代码中的新表单上。

【问题讨论】:

  • 我建议在以下C# adding Controls Dynamically at RunTime 上进行谷歌搜索,如果您不熟悉 C#,也有一些非常好的在线教程,您可以快速上手。了解基础知识在您进入更高级之前..
  • Form2 updateForm = new Form2(); - updateForm.Show();.
  • 您的代码似乎已经正确 - 尽管到目前为止的答案和 cmets 您的问题正在以多种不同的方式进行解释。你能让它不那么模棱两可吗?例如,您是在谈论在运行时添加控件吗?
  • @DonaldCox :你得到一个新表格,因为你一直声明一个空表格。改为:updateForm updateFrm = new updateForm(); updateFrm.Show();.
  • 又一个 VB“特性”(默认表单实例)阻碍程序员开发的例子。但它确实节省了 1 行代码!

标签: c#


【解决方案1】:

您在设计器中创建的每个表单都是一个普通类(使用设计器生成的方法来创建控件)。

您可以创建该类的实例并Show()它。

【讨论】:

  • 如何创建另一个表单的实例?
  • 使用new 运算符,就像任何其他类一样。
猜你喜欢
  • 1970-01-01
  • 2020-08-04
  • 1970-01-01
  • 2011-04-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-25
相关资源
最近更新 更多