Я пытаюсь обновить свойство на основе значения из 2 других свойств.
Я использую INotifyPropertyChanged
здесь.
Так что в основном у меня есть 3 свойства A
, B
и C
. Свойство, которое я обновляю, здесь C
на основе A
и B
. Я могу обновить значение свойства C
с A
и B
. Таким образом, свойство C
будет дополнением свойств A
и B
(C = A + B). Он отлично работает, когда передается одно значение из A
или B
, но когда передаются значения из обоих свойств, он принимает значение только из последнего переданного значения свойства. Я знаю, что мне нужно увеличить значение C
, когда передается значение из каждого свойства. Но как лучше всего этого добиться?
Вот мой код:
private int? _a;
public int? A
{
get => _a;
set
{
_a = value;
OnPropertyChanged($"A");
C = _a;
}
}
private int? _b;
public int? B
{
get => _b;
set
{
_b = value;
OnPropertyChanged($"B");
C = _b;
}
}
private int? _c;
public int? C
{
get => _c;
set
{
_c = value;
}
}
public event PropertyChangedEventHandler PropertyChanged;
[NotifyPropertyChangedInvocator]
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
Обновление
Извините за путаницу, описанную выше, в основном я пытаюсь обновить значение свойства C
, когда передаются свойства A
и B
. Таким образом, свойство C
будет дополнением свойств A
и B
(C = A + B). Надеюсь, это устранит путаницу?