在两个屏幕上调整大小时 wpf 窗口重影问题
标题几乎描述了它。如果我调整 WPF 应用程序的大小,使其在双显示器设置中扩展到两个显示器,然后将其大小调整回来,第二个显示器中将出现一个不执行任何操作的幻影窗口,但当我在其中移动原始窗口时,该窗口仍会移动。第一个屏幕。
有人遇到过这样的问题吗?我认为这是某些操作系统上的刷新错误(我使用 WINXP 32 位),但想与社区确认。
The title pretty much describes it. If I resize my WPF app so that it stretches over two monitors in a dual monitor setup, and resize it back, there will be a ghost window in the second monitor that does nothing, but is still moved when I move the original window in the first screen.
Has anyone had issues like this? I think its a refresh bug on some OSs (I use WINXP 32 bit), but would like to confirm with the community.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是因为AllowsTransparency 设置为true。还没有找到解决方法,但当我将其设置为 false 时,我没有看到鬼魂。
This is because AllowsTransparency is set to true. Haven't figured a workaround yet but as soon as I set it to false I didn't see the ghost.
是的,我们经常听到这样的情况。通常它与旧硬件(例如集成显卡)有关,但它也会发生在新硬件上(例如带有最新驱动程序的 Quadro NVS 295)。有时重影的数量取决于窗口拖动的速度。
不过,我们无法在 Quadro 450 或 290 上重现它,因此这似乎是驱动程序问题。
有两种方法可以解决这个问题 - 将AllowTransparency 设置为 false 或禁用硬件加速。
话虽这么说,这是我们在多显示器环境中使用 WPF 时遇到的较小问题之一......
Yes, we get this a lot. Usualy it is related to old hardware (eg. integrated graphics card), but it happens on new as well (eg. quadro NVS 295 with the latest drivers). Sometimes the amount of ghosting depends on the speed the windows is dragged with.
Then again, we can't reproduce it on quadro 450 or 290 so it seems it's a driver issue.
There are 2 ways to solve it - set AllowTransparency to false or disable HW acceleration.
This being said, this is one of the smaller problems we had with WPF in multi-monitor environments...