这是我的场景:
我的第一个窗口包含一个 ListView,ListView 中的每个项目都包含一个按钮,如果用户单击一个按钮,则会显示一个详细信息窗口。
我不希望应用程序显示太多窗口,只有一个就足够了,如果用户单击一个项目,则窗口显示,当用户单击另一个项目时,窗口的内容会发生变化,它不会创建新窗口以显示。所以我将窗口设置为单例,所有内容都使用数据绑定(MVVM模式),但是如果我关闭窗口,资源被释放,所以它不会再次显示,然后我覆盖关闭方法,让窗口取消,没有关闭,但是这样,即使我关闭了应用程序,窗口仍然没有被释放,在任务管理器中我也可以看到一个进程。
有人有更明智的想法吗?谢谢。
编辑:
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
this.Visibility = Visibility.Hidden;
}