0

現在、大量のデータを含むリストビューがあります。ほとんどのデータは、読み込まれると画面に表示されず、ユーザーは下にスクロールして情報を表示する必要があります。

データベースからの実際のデータの読み込みは非常に速く、データベースのコンテンツ全体を読み込もうとすると 1 秒もかかりません。ただし、表示にはもう少し時間がかかります。もちろん、行数が増えると時間がかかります。これは、特に低速のコンピューターでは厄介になる可能性があります。

ロード時間のバランスをとるために、ユーザーが下にスクロールしたときにディスプレイをロードする(そして本当に必要なときにのみロードする)WPFに何らかのコントロールがあるかどうか疑問に思っていました。ページ (10 ページ中 1 ページを上または下に表示するなど) については気にしないこともありますが、「シームレス」なものの方がはるかに優れていると思います。

ありがとう

4

1 に答える 1

1

VirtualizingStackPanelはあなたが探しているかもしれないものだと思います。

その上のMSDNページから:

標準レイアウト システムは、アイテム コンテナーを作成し、リスト コントロールに関連付けられた各アイテムのレイアウトを計算します。「仮想化」という言葉は、ユーザー インターフェイス (UI) 要素のサブセットが、画面上に表示される項目に基づいて多数のデータ項目から生成される手法を指します。画面に少数の要素しか表示されない場合に多くの UI 要素を生成すると、アプリケーションのパフォーマンスに悪影響を与える可能性があります。VirtualizingStackPanel は、表示されるアイテムの数を計算し、ItemsControl (ListBox や ListView など) の ItemContainerGenerator と連携して、表示されるアイテムのみの UI 要素を作成します。

于 2013-04-07T03:54:32.220 に答える