Как удалить изображение, пока оно находится в listview?
Я пытаюсь сделать этот вид списка, который показывает изображения в папке
<prelang="c#">
общественного недействительными метод loadData()
{
var imgList = каталог.Заражен(каталоге directorypath, "*.в JPG", searchoption указывает, нужно.AllDirectories);
myListView.ItemsSource = imgList;
}
Шаблон элемента управления ListView, изображение и кнопку, чтобы удалить изображение
Событие щелчка кнопки обрабатывается следующим образом
private void DeleteImg(object sender, RoutedEventArgs e) { string delImg = (string)(sender as Button).DataContext; File.Delete(delImg); LoadData(); }
При попытке удалить изображение я получаю следующую ошибку
System.IO.IOException: "процесс не может получить доступ к файлу "xyz", потому что он используется другим процессом".
xyz это имя файла очевидно
Я думаю, это потому, что изображение открыто в ListView
Есть идеи, как я могу закрыть файл перед его удалением
Что я уже пробовал:
Я пытался
myListView.ItemsSource = null;
myListView.Предметы.Четкий();
тоже:
Системы.ГК.Собирать();
System.GC.WaitForPendingFinalizers();