private Window1 W1...W1=new Window1()W1.Show()....W1.Close()W1=null
方法二:使用 this.FindName(Wn) as Windown) == null 判读Wn窗口是否存在,存在则橡纳将它关闭,重新创建并打开一个窗体。其中要注意一点的是子窗体手动关闭后要附值为null,否则窗口都是只关闭不清楚。
如果多个窗体的切换频繁可以采用Wn.Close()关闭但不赋值为null的方法。
WPF关闭当前窗口:public MainWindow()
{
InitializeComponent()
//在属性窗口那里貌似找不到这事件,绝族但是可以手动并空弊注册
this.Closing += F
}
private void F(object o, System.ComponentModel.CancelEventArgs e)
{
if (MessageBox.Show("关闭亏悔", "", MessageBoxButton.YesNo) == MessageBoxResult.No)
e.Cancel = true
}
如果是后台代码直接Show的窗口,那你就在“取消”按钮的点击事件中直接关闭逗举;如果是MVVM模式,那么定义一个请求关山伍碧闭事件和委托,添加一个关闭命令,然橘山后将关闭命令绑定到“取消”按钮的Command上面就可以了;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)