C# 如何绑定图像源

C# 如何绑定图像源,c#,wpf,image,binding,imagesource,C#,Wpf,Image,Binding,Imagesource,我正在尝试绑定图像源,问题是: 我有一个文件夹,其中有一个filesystemwatcher—每次向文件夹中添加一个新的映像文件—我都会获得映像的完整路径,并希望将其绑定到映像控件的源。 因此,每当新的TIFF文件添加到文件夹中时,GUI中的图像将自动更改 这就是我所做的: XAML: 在属性设置程序中引发属性更改事件 public ImageSource ButtonImage { get { return b; } set { b = value;

我正在尝试绑定图像源,问题是: 我有一个文件夹,其中有一个filesystemwatcher—每次向文件夹中添加一个新的映像文件—我都会获得映像的完整路径,并希望将其绑定到映像控件的源。 因此,每当新的TIFF文件添加到文件夹中时,GUI中的图像将自动更改

这就是我所做的:

XAML:


在属性设置程序中引发属性更改事件

public  ImageSource ButtonImage
{
    get { return b; }
    set
    {
        b = value;
        PropertyChanged("ButtonImage");
    }
}
创建一个viewmodel并将属性移动到那里,然后将视图的DataContext设置为此viewmodel

如果您正在使用代码隐藏,那么不要使用绑定 为图像命名
img.Source=值

谢谢你的回答,我已经引发了性能更改事件,绑定仍然不起作用…请发布你的代码..正如我提到的,你必须使用mvvm进行绑定才能正常工作我得到了图像的完整路径,并且想将其绑定到图像控件的源代码-为什么你不能呢?您应该有一个视图模型,其中路径的属性作为源,绑定到目标源属性。假设您已经正确地实现了视图模型,那么在上面的示例中,更新源属性将自动更新目标属性。如果没有良好的视图模型,就不可能知道出了什么问题。但是您显示的代码没有实现INotifyPropertyChanged see marked duplicate,也没有设置DataContext。另见,和
public  ImageSource ButtonImage
{
    get { return b; }
    set
    {
        b = value;
        PropertyChanged("ButtonImage");
    }
}