我创建了一个WPF应用程序,它打开第二个窗口,窗口样式为none。我有一个线程来更新chromeless窗口上的数据,我通过调用DragMove来处理左按钮以允许窗口移动。一台显示器的字体缩放率为150%,另一台显示器的字体缩放率为200%。
如果我将无边框窗口拖到第二个显示器上,则大小会变大或变小,后台线程的更新不再更新UI。如果我将其拖回原始监视器,则会恢复大小并恢复更新。
如果我将样式更改为ToolWindow,一切正常;当窗口在监视器之间拆分时,大小会发生变化,但一旦完全移动就会更正,并且UI更新会继续。显然,当显示器有标题栏而没有标题栏时,在显示器之间移动窗口会发生一些事情。
我还注意到,如果没有标题栏,如果将窗口移动到新显示器后,我摇动它会导致其他窗口最小化,然后窗口将调整大小并恢复更新。
有没有人看过这个或知道我会尝试什么?如果我找不到修复,那么我假设我必须使用一些p-invoke魔术来隐藏工具窗口的标题栏。