通过绑定wpf更改图像源代码

本文关键字:图像 源代码 wpf 绑定 | 更新日期: 2023-09-27 18:22:17

我正试图通过单击某些内容来更改图像源。

我的.xaml

<Canvas Name="img_Canvas" Grid.IsSharedSizeScope="True">
        <Image Source="{Binding ImageType_Source}" Name="autoImage" Margin="5"/>

my.cs

private string _ImageType_Source;
        public string ImageType_Source
        {
            get { return _ImageType_Source; }
            set { 
                _ImageType_Source = value;
                OnPropertyChanged("ImageType_Source");
            }
        }
        public exImage()
        {
            InitializeComponent();
            DataContext = this;

所以当我点击例如Ellipse时,我想更改图像。

private void Ellipse_MouseDown(object sender, MouseButtonEventArgs e)
        {
            ImageType_Source = "/ANKE_Test;component/imagesFolder/Bild_Getriebe.jpg";
            string test = autoImage.Source.ToString();

更改源后,将使用PropertyChanged=null但使用新源来激发PropertyChangedEvent。不幸的是,图片中的来源仍然是旧的,并且没有改变。

通过绑定wpf更改图像源代码

使用INotifyPropertyChanged时,我通常会制作自己的NotifyPropertyChanged方法,如下所示:

private void NotifyPropertyChanged(String info) {
        if (PropertyChanged != null) {
            PropertyChanged(this, new PropertyChangedEventArgs(info));
        }
    }

您是否使用OnPropertyChanged方法对执行了此操作?