【问题标题】:Send window to back when activated激活时将窗口向后发送
【发布时间】:2011-10-25 02:57:53
【问题描述】:

我在here找到了这个问题的答案。

当您只调用一次该方法时,该解决方案效果很好(不要从激活的事件窗口中调用它)。我正在创建一个小工具,我希望窗口始终位于后面。如果用户单击小工具,我不希望它出现在前面,这是 Windows 的默认行为。所以我为了解决这个问题所做的就是创建这个事件:

    private void Window_Activated(object sender, EventArgs e)
    {
        SendWpfWindowBack(this);
    }

所以每次激活窗口时,它都会调用基于我提供的第一个链接的方法。问题是系统托盘被发送到后面。让我告诉你我的意思。

这是我在 Visual Studio 上的小工具。

当我运行它时,它会被发送到后面:(我打开记事本和 Outlook 来说明我的观点)

现在,当我点击它时,事件 window_Activated 会触发并将其发送到后面:

但请注意系统托盘(windows 启动菜单窗口)是如何被送到后面的!!!!

除了最重要的窗口(即 Windows 启动菜单)之外,它仍然是一切的幕后黑手。我该如何解决这个问题。为什么会出现在系统托盘前面!?

【问题讨论】:

    标签: c# wpf windows


    【解决方案1】:

    经过 2 小时的顽固后,我想通了……由于某些原因导致窗口太大(小工具比整个桌面都大)。我把它变小了,它工作了。

    【讨论】:

      猜你喜欢
      • 2021-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-09
      • 2018-04-19
      • 2015-04-02
      • 1970-01-01
      相关资源
      最近更新 更多