DataTableにItemsSourceを設定したDataGridがあります。 DataTableには24の列と〜1600の行が格納されています(実際にはもっと多くの行を後でロードする必要がありますが、今のところこれは面倒です)。WPF DataGrid仮想化が正しく機能していませんか?
アクティブな列と行の仮想化の設定にもかかわらず、DataGridはこれらの1600行を表示するのに約30秒かかります。 その後、縦方向のスクロールはうまく動作し、横方向のスクロールは遅くなります。
メモリプロファイラを実行すると、アプリケーションで使用されるメモリの大部分がDataGridCells、Borders、ContentPresenters、Textblocksから取得されていることを確認できます。私にとって、これはグリッドが行を適切に仮想化していないことを示しています。
DataGridの仮想化に問題があることを誰でも確認できますか?あるいは、このコントロールの実装に悪名高いトラップがありますか?
あらゆる入力/提案を楽しみにしています。ありがとう:)
すべての列が標準列であるか、テキストのみを意味するのか、その中には「CheckBoxes」などのコントロールを含むものがありますか? – DHN
いいえ、2つはチェックボックスです。 –
ええと、それを試して、これらの2つの列を削除するか、外観を「標準」に変更してください。 – DHN