Изображение не обновляется в пользовательском графическом окне

Моя настраиваемая графическая рамка содержит просмотрщик и изображение. Свойство зависимости Image типа string используется для установки изображения.

<code>public static DependencyProperty ImageProperty = DependencyProperty.Register(
"Image", typeof(string), typeof(CustomPictureBox), new FrameworkPropertyMetadata("", new  PropertyChangedCallback(OnImageChanged)));


private static void OnImageChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
  CustomPictureBox cpb = (CustomPictureBox)d;
  if (e.Property == ImageProperty)
  {
    string newvalue = e.NewValue as string;
    if (!(string.IsNullOrEmpty(newvalue)))
    {
      var bmp = new BitmapImage();
      bmp.BeginInit();
      bmp.UriSource = new Uri(newvalue);
      bmp.CacheOption = BitmapCacheOption.OnLoad;
      bmp.EndInit();

      cpb.imgPicture.Source = bmp;
    }
    else
      cpb.imgPicture.Source = null;
  }
}
</code>

Изображение получается с помощью захвата кадров и сохраняется в определенном месте с именем «camera_image.tif». Для свойства Image установлено это имя файла. Когда я начинаю новое получение изображения, я устанавливаю свойство Image посредством привязки в null, и окно изображения обновляется, чтобы не показывать изображение. Когда получение изображения завершено, я установил для него значение «camera_image.tif». снова. Проблема в том, что новое изображение никогда не появляется. Вместо этого это всегда первое полученное изображение, которое отображается в графическом окне. Когда я проверяю файл изображения, он содержит новый контент.

Как я могу получить окно изображения, чтобы обновить изображение?

С Уважением,

Табина

Ответы на вопрос(1)

Ваш ответ на вопрос