質問

数秒ごとに、複数の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()を呼び出してください。あなたはそのちらつきを少し失うかもしれません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top