2

ボンネットの下と実際にはどのように、そしてどのように違いControl.DoubleBufferedますかControl.SetStyleControlStyles.DoubleBuffer

ControlStyles.DoubleBufferさらに、との違いは何ControlStyles.OptimizedBufferですか?ドキュメントページで定義されている違いは、実際には明確ではありません。

最後に、なぜとの両方ControlStles.OptimizedDoubleBufferにとをControlStyles.DoubleBuffer付ける必要があることがドキュメントで指定さControlStyles.UserPaintれているのControlStyles.AllPaintingInWmPaintですか?

これらの質問は、Windowsフォームアプリケーション(GDI +)に関するものです。たとえば、そのような方法が存在するかどうかはわかりませんが、存在するWPF場合。

4

1 に答える 1

2

DoubleBufferedプロパティは、.NETバージョン2で追加された便利なプロパティです。廃止されたDoubleBufferスタイルフラグと新しいOptimizedDoubleBufferスタイルのために、スタイルフラグを理解するのが難しくなりました。プロパティをtrueに設定すると、すべての適切なスタイルフラグが設定されるため、最高の価値が得られます。AllPaintingInWmPaintを含め、OnPaintBackgroundをOnPaintと同時に実行するには、通常は異なる時間に実行される場合でも、オンにする必要がある不思議なものです。重要。

スタイルフラグを使用すると、間違いが発生し、読みやすさが損なわれるため、常にプロパティを優先してください。

于 2013-01-23T03:32:15.740 に答える