Файл изображения заблокирован после загрузки в WPF

Я читаю свой источник изображений WPF следующим образом:

VB

Dim bmi As BitmapImage = New BitmapImage
bmi.BeginInit
bmi.CacheOption = BitmapCacheOption.None
bmi.CreateOptions = BitmapCreateOptions.IgnoreImageCache
bmi.UriSource = New Uri(input.FullName, UriKind.Absolute)
bmi.EndInit

C #

BitmapImage bmi = new BitmapImage();
bmi.BeginInit();
bmi.CacheOption = BitmapCacheOption.None;
bmi.CreateOptions = BitmapCreateOptions.IgnoreImageCache;
bmi.UriSource = new Uri(input.FullName,  UriKind.Absolute);
bmi.EndInit();

До этого момента он работает так, как должен. Но пользователь может обновить изображение, скопировав файл. Затем я хочу обновить изображение. Но файл "MyFileName" заблокирован, и когда я хочу его перезаписать, он выдает ошибку, что он уже используется и заблокирован.

Но подождите, я искал здесь решение и получил его:

bmi.cachoption = OnLoad

был ключ ... НО !! теперь изображение всегда является старым и не обновляется до нового файла. Как очистить этот кеш?

В VB.Net я сделал System.Drawing.Bitmap из потока. Как сделать это лучше всего в WPF?

С уважением

5
задан Nasenbaer 15 February 2018 в 14:18
поделиться