WPF 单例窗口Close()后再Show()会报错,Close会调用Dispose,资源会马上被释放,ShowDialog()的情形是一样的。

重载OnClosing(CancelEventArgs e)方法,使用Hide()方法。
| 代码如下 | 复制代码 |
| private static GHXTestControl _instance; private static readonly object ObjLok = new object(); public static GHXTestControl Instance() { lock (ObjLok) { return _instance ?? (_instance = new GHXTestControl()); } } /// 重写Close,窗口关闭时设置为隐藏。 /// protected override void OnClosing(CancelEventArgs e) { Hide(); e.Cancel = true; } private GHXTestControl() { InitializeComponent(); } | |
调用:
| 代码如下 | 复制代码 |
|
private WindowPages.GanHuaxue.GHXTestControl _GHXControl; private void Click() //WindowPages.GanHuaxue.GHXTestControl t = new WindowPages.GanHuaxue.GHXTestControl(); } | |
deepin20怎么新增字体? deepin20安装字体的教程
Linux如何给文件权限? linux给文件添加可执行权限的技巧
deepin20桌面图标样式怎么修改? deepin更换图标主题的技巧
virtualbox打不开虚拟机怎么办? linux无法访问virtualbox的解决办法
deepin怎么注销系统? deepin系统注销与切换用户的方法
Manjaro linux怎么调鼠标速度? Manjaro鼠标设置光标速度的技巧