リストボックスコントロール内のアイテムを表示するSilverlightアプリケーションを開発していますが、パフォーマンスの問題が少しあります。SilverlightリストボックスListBoxでのパフォーマンスの問題
リストボックスの各項目は、書式付きテキストなどを含むカスタムのスタックパネルです。
リストのアイテムが500個以下の場合、リストボックスは正常に動作しますが、これ以上ロードすると問題が発生します。 1000アイテムでSilverlightは10%のCPUを消費しますが、何もしていなくても3000個のアイテムでCPUは常に32〜36%を使用します。
これはデュアルコアマシンで、古いマシンでテストしました.CPUの使用状況をテストしました。
これもフレームレートに影響します。3000アイテムのリストボックスで6fpsになり、アプリケーションが低速になります。
原因を知っている人はいますか?私の最初の考えは、アイテムがスクリーンから外れていても、Silverlightがすべてのアイテムをレンダリングしようとしていたことです。これはVisibility.Collapsedでアイテムを挿入した場合と同じように見えますが、余分なCPUオーバーヘッドは存在しません。
PS:Silverlightフォームのhtml ontopを表示する必要があるため、windowless = "true"で動作しています。
ありがとう、データグリッドを使用して何が起こるかを見ていきます。 – JSmyth