WPF 如何关闭除主窗体以外的窗体?

WPF 如何关闭除主窗体以外的窗体?,第1张

方法一:将多个窗体定义为首磨主窗体梁芹没W0的私有成员,调用时再给W1、W2、W3赋值,手动打开或关闭窗口

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上面就可以了;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12353789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存