我是WPF新手,我正在尝试从主窗口中打开一个模态对话框:
public partial class MainWindow : Window
{
protected void OpenCommandExecuted(object target, ExecutedRoutedEventArgs e)
{
DataSearchWindow w = new DataSearchWindow();
w.Owner = this;
w.ShowDialog();
}
...
}
和我的DataSearchWindow的XAML如下所示:
<Window x:Class="DataSearchWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
ShowInTaskbar='False'
WindowStartupLocation='CenterOwner'
WindowStyle='ToolWindow'
...>
...
</Window>
一切正常,直到我按Alt-Tab切换到另一个应用程序。当我这样做时,我的应用程序从按下Alt-Tab时显示的列表中消失。它仍然在任务栏中,我可以使用鼠标返回它,而不是使用Alt-Tab。有没有人见过这个?
康斯坦丁
答案 0 :(得分:8)
这是因为模式对话框 - 在对话框关闭之前,您不能将Alt-Tab重新选回应用程序。由于WindowStyle设置为ToolWindow,因此它不会显示在Alt-Tab中。但是,如果它是常规窗口,则对话框窗口将显示在Alt-Tab中。
请注意,这不是WPF问题 - 例如,它与Windows窗体应用程序一致。