C# Control.DoubleBuffered和Control.SetStyle之间的差异

C# Control.DoubleBuffered和Control.SetStyle之间的差异,c#,winforms,C#,Winforms,Control.DoubleBuffered和Control.SetStyle与controlstyle.DoubleBuffer在引擎盖下和实践中有什么不同 此外,ControlStyles.DoubleBuffer和ControlStyles.OptimizedBuffer之间有什么区别?目前定义的差异并不十分清楚 最后,为什么文档中规定控制stles.OptimizedDoubleBuffer和控制样式.DoubleBuffer需要与控制样式.UserPaint和控制样式.allpaint

Control.DoubleBuffered
Control.SetStyle
controlstyle.DoubleBuffer
在引擎盖下和实践中有什么不同

此外,
ControlStyles.DoubleBuffer
ControlStyles.OptimizedBuffer
之间有什么区别?目前定义的差异并不十分清楚

最后,为什么文档中规定
控制stles.OptimizedDoubleBuffer
控制样式.DoubleBuffer
需要与
控制样式.UserPaint
控制样式.allpaintingwmpaint
一起使用


这些问题与Windows窗体应用程序(GDI+)有关。例如,我不知道在
WPF
中是否存在这样的方法,但如果存在的话。

DoubleBuffered属性是在.NET版本2中添加的方便属性。由于过时的DoubleBuffer样式标志和新的OptimizedDoubleBuffer样式,样式标志在那时变得很难确定。将该属性设置为true将设置所有正确的样式标志,以便获得最佳的回报。包括所有paintinginwmpaint,这个神秘的程序也需要打开才能在绘制时同时绘制背景,即使它们通常在不同的时间运行。重要的


始终支持该属性,使用样式标志只会导致错误并损害可读性。

Alex为什么不在MSDN上进行谷歌搜索,看看有什么区别是什么让“DoubleBuffer”过时了?我很想知道它与
OptimizedDoubeBuffer
的区别。