【问题标题】:ShowDialog makes app window disappear from windows' Alt-Tab list?ShowDialog 使应用程序窗口从 Windows 的 Alt-Tab 列表中消失?
【发布时间】:2010-09-21 13:10:24
【问题描述】:

我是 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。有人见过吗?

康斯坦丁

【问题讨论】:

    标签: wpf


    【解决方案1】:

    这是因为模态对话框 - 在对话框关闭之前,您无法通过 Alt-Tab 返回应用程序。由于 WindowStyle 设置为 ToolWindow,它不会显示在 Alt-Tab 中。但是,如果是常规窗口,对话窗口会显示在 Alt-Tab 中。

    请注意,这不是 WPF 问题 - 例如,它与 Windows 窗体应用程序一致。

    【讨论】:

    • 谢谢。是的,这是因为对话框。不,Alt-Tab 弹出窗口中没有显示任何内容。当我第一次按 Alt-Tab 时,主窗口确实显示在那里,但是当我再次按它时,它消失了,没有任何我的应用程序的痕迹。 RE:一致:哦,好吧,我不知道。谢谢!
    • 是的,这是因为您的对话框设置为 ToolWindow(第一次没有注意到 - 我会更新我的答案)。同样,这与 WinForms 一致。
    • 谢谢。我删除了 ToolWindow 样式,现在它确实出现了。这会起作用的。
    • 谢谢!我为我的 Windows 窗体应用程序编写了一个错误。将 FormBorderStyle 从 SizableToolWindow 更改为 Just Sizable 解决了这个问题。
    猜你喜欢
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    • 2012-10-23
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    • 2018-06-06
    • 1970-01-01
    相关资源
    最近更新 更多