In MVVM, how do I distinguish between user changes and system changes to the view model?
问题 I've found that the common way of defining view models doesn't differentiate between changes by the user and changes by the system. For example, public class PersonViewModel : ViewModelBase { private string _name; public string Name { get => _name; set => Set(ref _name, value); } } Here, the PropertyChanged notification will be raised if the user changes the name in the view. But it will also be raised if the application changes the property for some reason (for example, during initialization