C# WPF刷新图形是否与Windows窗体类似?
因此,如果我有一个WPF窗口,在WPF窗口上移动另一个窗口会导致WPF窗口像Windows窗体一样进行数千次重画吗C# WPF刷新图形是否与Windows窗体类似?,c#,.net,wpf,performance,C#,.net,Wpf,Performance,因此,如果我有一个WPF窗口,在WPF窗口上移动另一个窗口会导致WPF窗口像Windows窗体一样进行数千次重画吗 我想知道在这种情况下使用矢量的效果,而不是像窗口窗体那样基于位图的所有内容。WPF的渲染处理方式与Windows窗体完全不同。它使用DirectX来渲染自身,因此与Windows窗体相比,渲染的此类问题要少得多 (然而,这确实会导致一些自身的问题,特别是,它对图形卡的性能有更高的要求…您可以浏览一下以了解其设置方式 回答您的特定问题:WPF使用保留模式绘图系统。特别是,这意味着任何
我想知道在这种情况下使用矢量的效果,而不是像窗口窗体那样基于位图的所有内容。WPF的渲染处理方式与Windows窗体完全不同。它使用DirectX来渲染自身,因此与Windows窗体相比,渲染的此类问题要少得多
(然而,这确实会导致一些自身的问题,特别是,它对图形卡的性能有更高的要求…您可以浏览一下以了解其设置方式 回答您的特定问题:WPF使用保留模式绘图系统。特别是,这意味着任何必要的重画(可能是必要的)都在幕后处理,而无需您的干预 相比之下,GDI使用即时模式;i、 基本上你直接写入像素,如果出于任何原因,这些像素需要刷新,你需要重新渲染 WPF实际上并不一定会缓存所有东西——这取决于操作系统和内存可用性等因素。但是,如果它确实需要重新渲染,它将使用您上次提供的场景图进行重新渲染;这对程序员来说是透明的。此外,尽管它“使用”了DirectX,但这基本上只是意味着它正在尽最大努力使用硬件支持,因为目前为止,该功能是可用的和实现的。并非所有图形卡或所有WPF功能都完全加速。关注区分不同的渲染模式以及由此产生的后果