今天热门
热点:

一个Winform如何只能产生一个实例?,Winform产生实例?


RT:请高手指点,一个维护部门资料的WinForm,当我点击相应菜单项时判断是否已经打开这个WinForm,如果已打开则不许再开一实例.

解决方案

打开前判断一下

WinForm newWinForm = null;

private void button1_Click(object sender, EventArgs e)
{
    if (newWinForm == null || newWinForm.IsDisposed)
    {
        newWinForm= new WinForm(this);
        newWinForm.Show();
    }
    else
    {
        newWinForm.Active();
    }
}

參看
http://blog.csdn.net/tjvictor/archive/2007/01/18/1486420.aspx

如果是在一台PC上 可以采用MDI结构的Form
这样一次只能开一个相同的Form

如果是在不同的PC上,要调用通信
传递一个变量来进行判断

一个私有变量就搞定了 

我还以为要用到 mutex 之类的东西呢

Singleton (单件模式)
  
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 

最新版本:20070212

http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html

www.zrccd.nettrue/topics/20230304/774351.htmlTechArticle一个Winform如何只能产生一个实例?,Winform产生实例? RT:请高手指点,一个维护部门资料的WinForm,当我点击相应菜单项时判断是否已经打开这个WinForm,如果已打开则不许再开一实例. 解...

相关文章

    暂无相关文章

用户评论

大家都在看