C#. net Есть ли лучший способ пересчитать список несколько раз в классе? - PullRequest
0 голосов
/ 13 июля 2020

У меня есть такое свойство:

private int _Counter;
public int Counter;
{ 
    get { return _Counter; }
    set { _Counter = value; OnPropertyChanged(); }
)

и в классе я должен проверять значение счетчика несколько раз после некоторых действий

Counter = List.Where(item => item.State.ToUpper() = "SOME STATE").Count();
  1. всегда ли мне нужно вызвать всю строку кода выше, чтобы подсчитать список, или есть простой способ? поместите код прямо в свойство или что-то в этом роде
могу ли я поместить свойства, общие для, например ViewModelBase, а затем унаследовать их в других классах?

спасибо

1 Ответ

0 голосов
/ 13 июля 2020

Я предполагаю, что у вас есть элемент пользовательского интерфейса для отображения обновленного счетчика, который получен из определенного c журнала подсчета c

В этом случае ваш счетчик может быть в BaseViewModel, но это может быть просто

public virtual int Counter;
{ 
    get ;
    set ;
)

public ObservableCollection<YourType> Items {get;set;} 

ваша унаследованная ViewModel будет иметь другое поле

public override int Count { 
    get => _Count;
    set => this.SetPropertyChanged (ref _Count, "Count"); // if using Prism 
}

Теперь вы хотите иметь что-то в своей дочерней модели представления, чтобы слушать OnCollectionChange, а затем объявлять счетчик изменить, установив

this.Count = // your counting logic 

Итак, я действительно не вижу необходимости устанавливать это значение несколько раз, если только я не пропущу что-то из того, что вы пытаетесь достичь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...