真正的模态窗口可能吗?

时间:2009-07-17 19:58:03

标签: c# wpf xaml dialog modal-dialog

或者我必须做一些事情,比如创建一个窗体并在其中托管xaml?尽量保持外观和感觉一致。如果我只能做后者,我该如何实现呢?

2 个答案:

答案 0 :(得分:4)

这应该是你想要的:

var window = new MyWindow();
var helper = new WindowInteropHelper(window);
helper.Owner = this.Handle;
window.ShowDialog();

这是确保最小化/恢复时的正确行为的关键。有关该方法的详细信息,请参阅this blog post

(如果这不是你需要的,也许你可以定义“真正的模态”。)

答案 1 :(得分:1)

你可以创建custom dialog boxes,它们是模态的。您可以在其中托管WPF Window并将按钮定义为模态关闭按钮。这似乎是做模态窗口的最佳方式,IMO。