C# MVVM中未更新映像源
当我修改状态时,我希望有一个按钮更新其内容的图像源 XAML: 我希望在视图的代码隐藏中不使用任何代码C# MVVM中未更新映像源,c#,wpf,xaml,mvvm,binding,C#,Wpf,Xaml,Mvvm,Binding,当我修改状态时,我希望有一个按钮更新其内容的图像源 XAML: 我希望在视图的代码隐藏中不使用任何代码 播放器启动的属性和字段: private StartMenuViewModel.Status _status; private string _character; private string _name; private string _tokenSource; public StartMenuViewModel.Status Status { g
播放器启动的属性和字段
:
private StartMenuViewModel.Status _status;
private string _character;
private string _name;
private string _tokenSource;
public StartMenuViewModel.Status Status { get { return _status; } set { _status = value; OnStatusChanged(); } }
public string Character { get { return _character; } set { _character = value; OnCharacterChanged(); } }
public string TokenSource { get { return _tokenSource; } set { _tokenSource = value; } }
请在您的问题代码中包含
PlayerStartup.TokenSource
属性。这可能是解决问题的关键。源应绑定到图像。不是图像路径。这是一个常见的错误。请检查。@NorbertKovacs,TokenSource
在更改时不会通知PlayerStartup
必须实现INotifyPropertyChanged
并在启用TokenSource
时引发事件modified@ASh我已经试过了,但没用。现在我又试了一次,成功了。一定是拼错了什么,哈哈。谢谢!:)
....
if (status is ok)
{
((PlayerStartup)s).TokenSource = "pack://siteoforigin:,,,/Images/pic.jpg";
}
.....
private StartMenuViewModel.Status _status;
private string _character;
private string _name;
private string _tokenSource;
public StartMenuViewModel.Status Status { get { return _status; } set { _status = value; OnStatusChanged(); } }
public string Character { get { return _character; } set { _character = value; OnCharacterChanged(); } }
public string TokenSource { get { return _tokenSource; } set { _tokenSource = value; } }