C# 如何创建模态窗口?
我是C#和WPF的新手。我想打开一个新窗口,并完全保持在该窗口中锁定父窗口,即类似于MessageBox的内容 我有一个我选择的菜单项,在关闭时调用一个方法,然后创建并显示我的确认关闭窗口。我禁用了父窗口,但它将贯穿我想要等待的整个方法,直到我创建的第二个窗口关闭C# 如何创建模态窗口?,c#,wpf,C#,Wpf,我是C#和WPF的新手。我想打开一个新窗口,并完全保持在该窗口中锁定父窗口,即类似于MessageBox的内容 我有一个我选择的菜单项,在关闭时调用一个方法,然后创建并显示我的确认关闭窗口。我禁用了父窗口,但它将贯穿我想要等待的整个方法,直到我创建的第二个窗口关闭 void OnClose(object sender, ExecutedRoutedEventArgs args) { //this.IsEnabled = true; ConfirmC
void OnClose(object sender, ExecutedRoutedEventArgs args)
{
//this.IsEnabled = true;
ConfirmClose cc = new ConfirmClose();
this.IsEnabled = false;
cc.Show();
cc.Focus();
// How can I wait here until the windows cc has closed
this.IsEnabled = true;
}
如果用户不使用.Show()
use,则除非关闭表单,否则无法返回父窗口,如下所示:
ConfirmClose cc = new ConfirmClose();
cc.ShowDialog();
假设
ConfirmClose
是一个系统。Windows
我想您可能对OnClosing事件感兴趣,它允许您取消关闭。具体地说,他正在寻找一个阻塞调用。@SLaks,他在寻找一个阻塞调用,以便从用户那里锁定父窗口,直到他关闭ConfirmClose()
,这就是ShowDialog()
要做的。这就是我从OP的问题中理解的。谢谢你的反馈,这正是我想要的。@MGA:是的。你的答案完全正确,只是缺少正确的术语。