ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#.Net 判断窗体是否创建并激活

2021-09-26 18:36:24  阅读:184  来源: 互联网

标签:Form2 C# frm frm2 窗体 private new Net


C#.Net 判断窗体是否创建,如果已创建,激活窗体。

方法一

private Form2 frm2;
private void button1_Click(object sender, EventArgs e)
{
    if (frm2 == null) {
        frm2 = new Form2();
        frm2.StartPosition = FormStartPosition.CenterScreen;
        frm2.Show();
    } else {
        if (frm2.IsDisposed) { // 判断窗体是否关闭 关键代码
            frm2 = new Form2();
            frm2.StartPosition = FormStartPosition.CenterScreen;
            frm2.Show();
        } else {
            frm2.WindowState = FormWindowState.Normal; // 窗体默认大小
            frm2.Activate();  // 激活窗体
        }
    }
}

方法二

bool isFormOpen = false;
private void button2_Click(object sender, EventArgs e)
{
    foreach( Form frm in Application.OpenForms) { // 关键代码
        if (frm is Form2) {
            // 如果此窗口已打开,则激活;
            frm.Activate();
            frm.WindowState = FormWindowState.Normal;
            isFormOpen = true;
            break;
        }
    }
    if (!isFormOpen) {
        Form2 frm2 = new Form2();
        frm2.Show();
    }
}



参考:
1.link-01

标签:Form2,C#,frm,frm2,窗体,private,new,Net
来源: https://www.cnblogs.com/huvjie/p/15339471.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有