c#一个窗体跳转到另外一个窗体是怎么弄的

c# 中实现窗体间的跳转有以下几种方法:构造函数:直接从一个窗体跳转到另一个窗体,代码量少。this[key]:获取窗体的引用后跳转,可跳转到任何已创建的窗体。application.openforms:遍历所有已创建的窗体以寻找目标窗体。

c# 中实现窗体间的跳转有以下几种方法:构造函数:直接从一个窗体跳转到另一个窗体,代码量少。this[key]:获取窗体的引用后跳转,可跳转到任何已创建的窗体。application.openforms:遍历所有已创建的窗体以寻找目标窗体。调用 getform:简便高效,避免遍历所有窗体。

c#一个窗体跳转到另外一个窗体是怎么弄的

C# 中实现窗体之间的跳转

在 C# 中,实现窗体之间的跳转有多种方法:

1. 构造函数

  • 优点:简单直接,代码量少。
  • 缺点:只能从一个窗体直接跳转到另一个窗体。
// 从 Form1 跳转到 Form2
Form2 form2 = new Form2();
form2.Show();
Hide(); // 隐藏当前窗体

登录后复制

2. this[Key]

  • 优点:可以跳转到任何已创建的窗体。
  • 缺点:代码量较多,需要获取窗体的引用。
// 从 Form1 跳转到 Form2
if (this["Form2"] != null)
{
    Form2 form2 = (Form2)this["Form2"];
    form2.Show();
}

登录后复制

3. Application.OpenForms

  • 优点:无需提前创建窗体。
  • 缺点:需要遍历所有已创建的窗体。
// 从 Form1 跳转到 Form2
bool isForm2Open = false;
foreach (Form form in Application.OpenForms)
{
    if (form.Name == "Form2")
    {
        form.Show();
        isForm2Open = true;
        break;
    }
}

if (!isForm2Open)
{
    Form2 form2 = new Form2();
    form2.Show();
}

登录后复制

4. 调用 GetForm

  • 优点:简便高效,避免了遍历所有窗体。
  • 缺点:需要引用 Microsoft.VisualBasic 命名空间。
// 从 Form1 跳转到 Form2
using Microsoft.VisualBasic;

Form2 form2 = Form.GetForm<form2>();
if (form2 == null)
{
    form2 = new Form2();
}
form2.Show();</form2>

登录后复制

以上是 C# 中实现窗体跳转的几种常用方法,根据具体需求选择最合适的方法即可。

以上就是c#一个窗体跳转到另外一个窗体是怎么弄的的详细内容,更多请关注叮当号网其它相关文章!

文章来自互联网,只做分享使用。发布者:城南北边,转转请注明出处:https://www.dingdanghao.com/article/475565.html

(0)
上一篇 2024-05-12 18:41
下一篇 2024-05-12 18:41

相关推荐

联系我们

在线咨询: QQ交谈

邮件:442814395@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信公众号