Tal*_*ode 6 wpf user-interface window
在我的WPF应用程序中,我有时需要创建一个小帮助窗口,并在我第一次需要时创建窗口的实例.
if (mesareaderThreadQueWin == null)
{
mesareaderThreadQueWin = new MesaReaderThreadQueWindow();
}
mesareaderThreadQueWin.Show();
Run Code Online (Sandbox Code Playgroud)
这到目前为止完美无缺.但是,如果我关闭窗口并再次调用代码,程序崩溃告诉我在窗口已经关闭后我无法显示.
我想知道这里到底发生了什么.该窗口不为null,否则代码只会创建一个新实例,但由于我已经显示了窗口,我似乎再也不能这样做了.所以窗口必须处于某种中间状态.无法变为可见但不为空.
我可以检测到这种状态吗?它有一种方法再次重用这个窗口,然后根本不关闭窗口,而是使用隐藏?
我可以检测到这种状态吗?
据我所知,没有办法访问这个状态
除了根本不关闭窗口并使用隐藏来代替之外,是否有办法再次重用该窗口?
是的,处理Closing对话框窗口中的事件,或者重写该OnClosing方法:
protected override void OnClosing(CancelEventArgs e)
{
e.Cancel = true;
this.Hide();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1835 次 |
| 最近记录: |