Я пытаюсь выяснить, как обновить мои свойства bool внутри ViewModel
, используя INotifyPropertyChanged
?
В основном, в моей ViewModel я передаю список строк. Каждое логическое свойство проверяет список, чтобы увидеть, существует ли строковое значение.
Теперь в моем жизненном цикле программного обеспечения список будет обновляться, и я хочу обновить каждое свойство с помощью INotifyPropertyChanged.
Мой вопрос: как вызвать метод INotifyPropertyChanged из метода AddToList
? Является ли использование метода для этого правильное направление?
public class ViewModel : INotifyPropertyChanged
{
private List<string> _listOfStrings;
public ViewModel(List<string> ListOfStrings)
{
_listOfStrings = ListOfStrings;
}
public bool EnableProperty1 => _listOfStrings.Any(x => x == "Test1");
public bool EnableProperty2 => _listOfStrings.Any(x => x == "Test2");
public bool EnableProperty3 => _listOfStrings.Any(x => x == "Test3");
public bool EnableProperty4 => _listOfStrings.Any(x => x == "Test4");
public void AddToList(string value)
{
_listOfStrings.Add(financialProductType);
// Should I call the OnPropertyChanged here
}
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}