请选择 进入手机版 | 继续访问电脑版

无忧编程_ASP.NET  / C# / PHP 程序员的软件世界

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 473|回复: 0

C# Winform同一子窗体只允许打开一次的方法

[复制链接]

347

主题

377

帖子

1557

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1557
发表于 2018-4-1 10:09:36 | 显示全部楼层 |阅读模式
C# Winform同一子窗体只允许打开一次的方法

最近在写一个小程序,遇到子窗口打开多次的情况,通过查找找到了解决办法,但是有写不尽人意,比如对子窗体最小化时的处理。

因此进行了优化得到如下代码,目前测试可能遇到的情况都完美解决,包括子窗体最小化:

Form test = Application.OpenForms["about"];  //查找是否打开过about窗体  
if ((test == null) || (test.IsDisposed)) //如果没有打开过
{
    about aboutus = new about();
    aboutus.Show();   //打开子窗体出来
}
else
{
    test.Activate(); //如果已经打开过就让其获得焦点  
    test.WindowState = FormWindowState.Normal;//使Form恢复正常窗体大小
}

文章来自:https://blog.csdn.net/kangkang621/article/details/49664295


windows .net(C#+MSSQL) linux(php+mysql)  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|软件编程 ( 鄂ICP备11006601号鄂公网安备 42011102001337号 |

GMT+8, 2018-7-21 05:53 , Processed in 0.129012 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表