我在通过远程桌面连接呈现WPF应用程序时遇到问题。
应用程序chrome正在渲染,但没有任何内容通过,就像窗口没有绘制一样。相反,屏幕的先前内容显示在它的位置。
这是Vista和Win 7上运行的应用程序的一个问题,远程控制来自XP和Win7。
问题不是特定于应用程序,如果我创建一个新的WPF应用程序,窗口上只有一个文本块,它也将无法运行。 (Neather将在VS2008中预览窗口。)
是否有一些技巧让WPF在RDP下运行?
我在Kevin Dente的博客(来自Twitter帖子)上看到他在虚拟机中遇到了WPF应用程序的问题。虽然与远程桌面不同,但问题可能是相同的。 Kevin能够通过在以下位置创建DWORD注册表值来禁用硬件加密来解决问题
HKEY_CURRENT_USER \ SOFTWARE \微软\ Avalon.Graphics \ DisableHWAcceleration
然后将其设置为1。
他最初的博客文章在这里:http://weblogs.asp.net/kdente/archive/2009/10/19/visual-studio-2010-beta-2-editor-performance-fix-running-on-a-virtual-machine.aspx
这可能不是您的确切解决方案,但它可能会指出您正确的方向。
WPF应该通过RDP呈现;它足够聪明,可以知道什么时候可以在硬件中渲染,什么时候不能恢复到它自己的基于GDI +的软件渲染。我会确保您在远程计算机上运行.NET Framework 3.5 SP1,因为可能会出现问题的远程更改。 (见下面的链接。)
我在过去的6个月里一直在开发一个WPF应用程序,它在RDP上工作得很好。 (从Vista和Win7到XP,Vista和Server 2003.)然而,一个重要的警告是它渲染使用经典主题。因此,如果您使用的是没有经典主题的控件,则无法呈现。如果您只是在窗口上放置TextBox,那么显然这不是您的问题。
看看这个问题可能有用的一些链接:Are there problems with rendering WPF over Remote Desktop under Windows XP?
您是否也尝试过Win7最新的RDP-Win7连接?事情是WPF不使用GDI来绘制元素。
VNC客户端(如UltraVNC)可能会为您提供技巧,因为它们使用更简单的算法,更像是发送位图。
我刚刚通过RDP首次测试时,功能区窗口无法正确显示此问题 - 透明背景为白色,关闭最小化/最大化按钮缺失,窗口底部的圆角为方形,顶部一排色带按钮几乎不可能选择。
事实证明,有一个简单的解决方案。右键单击RDP连接图标(我将其保存在桌面上),选择“编辑”,然后选择“体验”选项卡,并将“自动检测连接质量”更改为“LAN(10 Mbps或更高)”。
这为我修好了。
A的
我和提问者有同样的问题。标准的,开箱即用的复选框无法正确呈现。我只能看到是否在清理复选框时检查了它。另外,检查和未检查之间没有区别。重要提示:将前景设置为白色时会出现这种情况(请参阅此处:https://social.msdn.microsoft.com/Forums/vstudio/en-US/1c03db49-7e53-4cbb-9dd1-b328017c4453/wpf-checkbox-and-radiobutton-check-mark-not-showing-under-xp-windows-classic-theme-and-remote?forum=wpf)
我们的应用程序曾经在自定义进度条中出现此问题。我们通过将Border控件的背景颜色设置为White来修复此问题。这让我觉得透明背景存在问题
将WPF内容显示在远程桌面上并不需要特殊技巧。我们的基于WPF的应用程序在RDP(从众多计算机上试用)上提供了很好的解决方案。我们甚至使用动画,渐变,WriteableBitmap等没有问题。