Я использую imagelist с компонентом listview в первый раз, я хотел перечислить изображения.проблема, с которой я сталкиваюсь, заключается в том, что я не могу избежать дублирования изображений при добавлении изображений снова в просмотр списка.пожалуйста, посмотрите следующий код и дайте мне знать, где я иду не так
OpenFileDialog addImages = new OpenFileDialog();
addImages.Filter = "JPEG (*.jpg)|*.jpg";
addImages.Multiselect = true;
if (addImages.ShowDialog(this) == DialogResult.OK)
{
foreach (string filename in addImages.FileNames)
{
try
{
if (this.imageList1.Images.ContainsKey(filename) == false)
{
this.imageList1.Images.Add(filename, Image.FromFile(filename));
}
}
catch{}
}
this.listView1.View = View.LargeIcon;
this.listView1.LargeImageList = this.imageList1;
for (int i = 0; i < this.imageList1.Images.Count; i++)
{
if (this.listView1.Items.ContainsKey(this.imageList1.Images.Keys[i]) == false)
{
ListViewItem li = new ListViewItem();
li.ImageIndex = i;
li.ImageKey = this.imageList1.Images.Keys[i];
li.Text = Path.GetFileName(this.imageList1.Images.Keys[i]);
this.listView1.Items.Add(li);
}
}
}