コードビハインド(ビュー)では、プロパティ変更イベント(またはその他のイベント、実際はViewModel実装に依存します)を購読する必要があります。ここで
は、サンプルのViewModelである:ここでは
public class SomeViewModel : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private string someProperty;
public string SomeProperty
{
get { return someProperty; }
set
{
someProperty = value;
OnPropertyChanged();
}
}
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
はサンプル図である。また、いくつかのMVVMライブラリやフレームワークの使用を検討し
public partial class SomeView : Window
{
public DiscImageView()
{
// ...
viewModel.PropertyChanged += ViewModel_PropertyChanged;
}
private void ViewModel_PropertyChanged(object sender, PropertyChangedEventArgs e)
{
if (e.PropertyName == nameof(SomeViewModel.SomeProperty))
{
// Logic for changed property event
}
}
}
、彼らは人生に多くを簡素化します。私はMVVMLightを提案し、他にはmessaging capabilitiesを持っています。