c# - 我们如何防止弹出窗口出现在应用程序顶部?

标签 c# .net wpf popup fullscreen

我有一个全屏窗口,我想阻止出现在屏幕右下角的弹出窗口。我将 Topmost 属性设置为 true,但显然它没有帮助。我还尝试激活表单并在它被停用后将焦点赋予它,但这也无济于事。当用户使用全屏应用程序时,有什么方法可以忽略此类窗口?我正在使用 C# 进行 .NET 编程。

最佳答案

你不能这样做,这没有通过“如果两个程序试图这样做会怎样”测试:

  1. 那些弹出窗口和您的窗口一样只是普通窗口,它们也使用与您正在使用的相同的最顶层样式。
  2. 如果有一种方法总是在其他最顶层的窗口之上,他们也会使用它来使它变得无用(因为其他应用程序的作者和您一样担心用户错过他们的“ super 重要”通知他们会干扰您的全屏应用程序)。

你可以尝试玩一些卑鄙的把戏来迫使你的窗口位于最顶层的 z 顺序的顶部,但这些弹出窗口可能会使用完全相同的技巧,再次使这一切变得毫无用处(作为额外的奖励,所有这些肮脏的把戏可能会使您的应用变成兼容性噩梦)。

关于c# - 我们如何防止弹出窗口出现在应用程序顶部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2047616/

相关文章:

c# - 在列上创建唯一约束

c# - 与登录用户以外的用户一起使用兑换 (Outlook) - 并收到错误

c# - 汉诺塔 : Moving Rings from Peg to Peg

wpf - WPF 应用程序的配色方案

c# - .NET MAUI 和 Jetbrains Rider 中平台特定代码的问题

c# - 从mysql数据库中检索blob图片c#

c# - 如何创建一个没有初始化为 null 或 0 的对象的数组?

.net - OWIN 中的 EntryPointNotFoundException

WPF 绑定(bind)开销

c# - 列表框项的 WPF 输入键绑定(bind)