我编写的应用程序(https://github.com/JuliusSweetland/OptiKey)请求UIAccess(能够在所有内容之上呈现)并且具有使用MahApps.Metro设置样式的模式弹出窗口。在Windows 8 / 8.1上运行时一切都很好,但在Windows 10上,弹出窗口不会显示(不会在任何地方呈现),但在任务栏中可见。将鼠标悬停在缩略图上会显示预览,但永远不会显示窗口。
我已将问题缩小到Windows 10,并且清单中的 UIAccess =“true”设置是否为true / false(如果设置为false则可以。)
我最初认为问题与.Net 2.0.0.0运行时没有出现在Windows 10的默认安装上,因为当我安装Snoop(我认为安装了.Net 3.5等2.0)时问题就消失了.0.0运行时),但为了证明我卸载.Net 3.5的修复,它带回了子窗口的问题,然后重新安装了.Net 3.5,它没有再次解决问题。
我尝试了以下内容:
唯一有效的方法是设置UIAccess =“false”,但我需要它是真的。
N.B。 UIAccess在Windows 8.1上运行正常,我已经满足了要求(向清单添加UIAccess =“true”,签署程序集,以及从受保护目录“Program Files”运行)
知道发生了什么事吗?
答案 0 :(得分:0)
发现问题 - 作为启动子窗口的一部分,我将父窗口的TopMost属性设置为false(然后在子窗口关闭时将其设置回原始值)。关于设置parentWindow.TopMost = false的事情导致了不可见的子窗口问题。我删除了相关的行(在此提交中:https://github.com/JuliusSweetland/OptiKey/commit/e9031119a726518f54da94c64faceeee991b3747),一切都有效。