私のフォームには C# の ListView と ImageList があり、最大で約 1000 ファイルのディレクトリを読み込んでいます。AddRange メソッドを使用して、ListView と ImageList に fileItems DummyItems の数を事前に入力し、ListView のちらつきとスクロールを回避します。
2 番目のステップでは、ファイル システムから実際のアイテムを読み取るときに、正しいアイテム情報をダミー アイテムに割り当てたいと思いました。アイテムのテキストは問題ありませんが、ダミーの画像を差し替えることができません。そうしようとすると、常に無効な引数の例外がスローされます。RemoveAtIndex または RemoveAtKey で画像を削除してから再度追加すると、1000 個のファイルを反復処理するのに時間がかかります。ImageList の「RemoveAtKey」で 1000 個のファイルに 8 分かかります。「RemoveAtKey」は私が見つけたボトルネックです。前にすべての画像をクリアして AddRange で再設定しようとすると、アイテムの画像が空白になるか、例外が発生します。私が使用する方法とは別の方法で、1000 個のファイルから 1000 個の異なるサムネイルをファイル名で高速にリストビュー コントロールに取得する方法を誰かが知っていますか?