Привязка изображений в WPF - PullRequest
       0

Привязка изображений в WPF

0 голосов
/ 04 декабря 2011

У меня есть элемент управления изображением, который должен делать слайд-шоу. Вот связывание, которое я использовал для достижения этой цели:

    Binding mapBinding = new Binding();
    mapBinding.Source = slideView;
    mapBinding.Path = new PropertyPath("ImageDrawing");
    sliderImage.SetBinding(System.Windows.Controls.Image.SourceProperty, mapBinding);

А класс SlideImage

public class SlideImage : INotifyPropertyChanged {
    public ImageSource ImageDrawing{get;set;} 
    public void ChangeImage(){
         // Load another image
         // Update ImageDrawing
         // Fire property changed event
    }
    public event PropertyChangedEventHandler PropertyChanged;
}

Я нашел много примеров в сети, используя UpdateSourceTrigger для прослушивания изменений источника данных. Единственная проблема - элемент управления Image не имеет этого свойства.

Как подключить мой sliderImage элемент управления для обновления на SlideImage.PropertyChanged?

1 Ответ

2 голосов
/ 04 декабря 2011

Вероятно, он обновится автоматически, если вы на самом деле звоните PropertyChanged при вызове установщика ImageDrawing.

Вы не используете PropertyChanged для своего свойства ImageDrawing в коде, который вы указали. Попробуйте это:

private ImageSource imageDrawing;
public ImageSource ImageDrawing
{
    get { return imageDrawing; }
    set
    {
        imageDrawing = value;
        RaisePropertyChanged("ImageDrawing");
    }
}

private void RaisePropertyChanged(string propertyName)
{
    if(PropertyChanged != null)
    {
        PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...