WPF相当于Form.ShowDialog(IWin32Window)

时间:2011-08-16 21:41:43

标签: c# .net wpf winforms childwindow

在WPF中,我们有Window.ShowDialog(),允许显示模式对话框。

在WinForms中有类似的功能,但有一个重载Form.ShowDialog(IWin32Window),允许传入IWin32Window owner。这样新的对话框不是模态的,并且始终在其所有者的正上方维持一个z顺序。

如何使用WPF获得相同的功能?

2 个答案:

答案 0 :(得分:3)

在窗口上使用Owner属性。

答案 1 :(得分:1)

扩展@ Jonathan.Peppers的回答:

假设您有一个名为FooWindow的窗口,而在BarWindow.cs中您想要创建并执行一个实例。您可以像这样简单地创建FooWindow的模态版本:

new FooWindow(){ Owner = this }.ShowDialog();

那假设您不需要对您的实例的引用,显然,但是您明白了吗?