Я хочу загрузить все изображения в файле и показать их в ListView (количество изображений составляет приблизительно 3000).Есть некоторые проблемы с выводом изображения.
Программа некоторое время умирает во время печати изображения.
- Я использую Thread, но проблема по-прежнемуне исправлено.
Теперь программа загружает все изображения и выводит их сразу в ListView.
- Я хочу распечатать его немедленнопосле загрузки.
Если переместить полосу прокрутки изображения, изображение некоторое время будет белым, но если я остановлю полосу прокрутки, оно будет напечатано правильно.
Как можно плавно вывести изображение, не становясь белым?
private void button2_Click(object sender, EventArgs e)
{
FolderBrowserDialog folder = new FolderBrowserDialog();
if(folder.ShowDialog() != DialogResult.OK)
{
return;
}
List<string> files = new List<string>();
files.AddRange(Directory.GetFiles(folder.SelectedPath, "*.bmp"));
ImageList img = new ImageList();
img.ImageSize = new Size(160, 130);
for (int index=0; index <files.Count; index++)
{
Image Im = Image.FromFile(files[index]);
img.Images.Add(Im);
}
Thread thread = new Thread(new ThreadStart(delegate ()
{
this.Invoke(new Action(delegate ()
{
for(int index=0; index < files.Count; index++)
{
listView1.LargeImageList = img;
listView1.Items.Add(files[index], index);
}
}));
}));
thread.Start();
}