.net flowlayoutpanelのフリッカーを減らします
-
27-09-2019 - |
質問
数秒ごとに、複数のLinkLabelをFlowLayoutPanelにクリアして追加しています。正常に動作しますが、Flickerは非常に顕著です。それを減らす方法はありますか?私はform.doublebufferingを設定しようとしましたが、それは役に立ちませんでした。
解決
FlowLayoutPanelから派生したカスタムコントロールを作成し、以下に示すようにスタイルを設定することにより管理します。
パブリッククラスCustomFlowlayoutPanelがFlowLayoutPanelを継承します
Public Sub New() MyBase.New() SetStyle(ControlStyles.UserPaint, True) SetStyle(ControlStyles.AllPaintingInWmPaint, True) SetStyle(ControlStyles.DoubleBuffer, True) End Sub
エンドクラス
他のヒント
コントロールを追加する前に、パネルのsuspendlayout()を呼び出してから、パネルにresumelayout()を呼び出してください。あなたはそのちらつきを少し失うかもしれません。
所属していません StackOverflow