对话窗口在其他Windows后面丢失

时间:2011-07-08 20:40:23

标签: wpf window showdialog

我是WPF的新手,所以这可能是一个非常简单的问题。我使用ShowDialog()打开一个对话窗口。然后,如果我点击另一个全屏或只覆盖我的对话框的窗口,则很难返回到对话框。任务栏中显示的图标将我带回主WPF窗口,但对话框仍隐藏在另一个窗口后面。我要么必须将阻止窗口或Alt-Tab最小化回我的应用程序(这将显示对话框,但隐藏主窗口)。

窗口的定义如下:

<Window x:Class="MyProject.MyWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        ResizeMode="CanResizeWithGrip"
        ShowInTaskbar="False"
        WindowStartupLocation="CenterOwner"
        Width="750"
        Height="565"
        Title="MyWindow">

我打开它:

var dlg = new MyWindow();
if (dlg.ShowDialog() != true)
    return;

1 个答案:

答案 0 :(得分:18)

您应该设置对话窗口的所有者。这样的事情。

var dlg = new MyWindow();
dlg.Owner = this;
if (dlg.ShowDialog() != true)    
    return;