C# 中实现窗体之间的跳转
在 C# 中,实现窗体之间的跳转有多种方法:
1. 构造函数
优点:简单直接,代码量少。 缺点:只能从一个窗体直接跳转到另一个窗体。<code class="c#">// 从 Form1 跳转到 Form2 Form2 form2 = new Form2(); form2.Show(); Hide(); // 隐藏当前窗体</code>
2. this[Key]
优点:可以跳转到任何已创建的窗体。 缺点:代码量较多,需要获取窗体的引用。<code class="c#">// 从 Form1 跳转到 Form2
if (this["Form2"] != null)
{
Form2 form2 = (Form2)this["Form2"];
form2.Show();
}</code>3. Application.OpenForms
优点:无需提前创建窗体。 缺点:需要遍历所有已创建的窗体。<code class="c#">// 从 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();
}</code>4. 调用 GetForm
优点:简便高效,避免了遍历所有窗体。 缺点:需要引用 Microsoft.VisualBasic 命名空间。<code class="c#">// 从 Form1 跳转到 Form2
using Microsoft.VisualBasic;
Form2 form2 = Form.GetForm<Form2>();
if (form2 == null)
{
form2 = new Form2();
}
form2.Show();</code>以上是 C# 中实现窗体跳转的几种常用方法,根据具体需求选择最合适的方法即可。
