I use MVVM Light. My Model inherits from MVVM Light's ObservableObject. The Model has a property X
public float X
{
get
{
return x_;
}
set
{
Set<float>(() => this.X, ref x_, value);
}
}
In my ViewModel I have a property X
public float X
{
get
{
myModel.X;
}
}
My View has a label where the content is binding to the ViewModel property X.
(DataContext is set to ViewModel)
When the value of property X in Model is updated from code, the label in the view never gets updated.
Question what is the recommended way to make sure that the View correctly reflects the updated value?
(If I make a property in my ViewModel that returns the Model, I could bind direclty to Model.X in my View. But I want my View to bind to the ViewModel not directly down to the Model)
myModel.Xfires its PropertyChanged event, that does not automatically fire the ViewModel's PropertyChanged event. MakeMyModela public property in the ViewModel and bind toMyModel.X. - Clemens