Ste*_*fan 15 wpf hardware-acceleration
在WPF中禁用硬件加速的步骤是什么?究竟是什么?它是一个Windows设置,一个视觉工作室设置还是你在wpf项目代码中改变的东西?它只会影响您正在运行的程序还是会影响整个系统?
Kon*_*rin 37
您可以在Window从.Net 3.5 SP1开始的级别上禁用它.
public partial class MyWindow : Window
{
public MyWindow()
: base()
{
InitializeComponent();
}
protected override void OnSourceInitialized(EventArgs e)
{
var hwndSource = PresentationSource.FromVisual(this) as HwndSource;
if (hwndSource != null)
hwndSource.CompositionTarget.RenderMode = RenderMode.SoftwareOnly;
base.OnSourceInitialized(e);
}
}
Run Code Online (Sandbox Code Playgroud)
或者您可以订阅SourceInitialized窗口事件并执行相同操作.
或者,您可以在Process级别设置它:
RenderOptions.ProcessRenderMode = RenderMode.SoftwareOnly;
Run Code Online (Sandbox Code Playgroud)
软件渲染的优先顺序是:
flo*_*ele 16
在4.0版中,您还可以使用RenderOptions.ProcessRenderMode设置进程范围的首选项(http://msdn.microsoft.com/en-us/library/system.windows.media.renderoptions.processrendermode.aspx).
t0m*_*13b -9
这是系统范围的设置,从桌面右键单击弹出菜单,单击属性,然后在其中查找视频设置以禁用硬件加速,或者可能有一个用于图形设置的系统托盘图标。这是系统范围的而不是本地的。