请原谅我,如果这是一个技术问题,而不是软件编程问题,但我很难确定可能的原因,无论是.NET Framework还是更低级别的东西,可能是图形硬件。基本上,没有WPF应用程序将使用我的Windows 10 Alienware 13笔记本电脑在第二台显示器上运行。在我的Windows 8 Alienware 15下运行的同一台显示器上的相同应用程序可以正常工作。如果可能存在共同因素,Visual Studio 2015也是类似的情况。任何有关此类问题的经验都将受到赞赏
答案 0 :(得分:1)
对我来说,问题似乎在于WPF应用程序中的硬件加速,因为禁用它使得无法重现问题(以前我使用winkey +箭头将WPF从主屏幕移动到辅助屏幕时没有遇到任何麻烦)
以下注册表编辑可用于禁用WPF应用程序内的硬件加速:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics]
"DisableHWAcceleration"=dword:00000001
来源:
答案 1 :(得分:0)
我的Windows 10和双显示器(笔记本电脑屏幕+通过HDMI连接的第二台显示器)遇到了同样的问题。
我的解决方案是在第二台显示器中修复"黑色窗口"是这样的:
右键单击桌面,找到您的图形卡供应商配置界面。在此弹出菜单中,您将找到类似于"英特尔图形和#34;或" nVidia配置"," AMD控制中心"等...
找到"缩放选项"并改变价值。我禁用了"缩放" (OFF)并且问题已修复,因此当您在屏幕之间移动应用程序时,此问题与窗口的自动缩放有关。
答案 2 :(得分:0)
为应用程序禁用硬件加速对我来说很有效。这可以在任何时候执行并立即生效。因此,您可以在wpf应用程序已经运行时调用它
RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;