Здравствуйте, HotDog, Вы писали:
HD>Есть папки с несколькими миллионами файлов внутри. Не спрашивайте почему или как, это пишет левая прога, которая не в наших руках. HD>Нужно показывать содержимое этих директориев.
Я бы немного с другой стороны подошел бы.
Где показывать ? Сколько в окне показывать (не миллион же!). И как показывать — последовательно или в произвольном порядке, то есть с произвольным скроллингом ?
Если последовательно, то можно использовать для ListView или DataGridView виртуальный режим.
Начинаешь Directory.EnumerateFiles в отдельном потоке, заносишь данные в какой-то ArrayList с большой начальной емкостью (чтобы избежать насколько можно переаллокаций) и сразу же показываешь то, что поместилось в окне. Пока пользователь листает вперед, ArrayList дозаполняется.
Увы, если надо показывать в произвольном порядке, это не пройдет — там лишь IEnumerable.