Триггер на изменение листа (списка) - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет! Вопрос следующий. Есть класс K, который наследует от List<int> и имеет поле bool isChecked. Хочу чтобы isChecked менял свое значение на false, когда список меняет свою структуру: добавляются или удаляются элементы списка. Есть ли в C# функционал, который позволит сделать это не переопределяя все методы подряд, по типу Remove, Add и прочие? Спасибо.

Решение задачи: «Триггер на изменение листа (списка)»

textual
Листинг программы
class Program
    {
        static void Main(string[] args)
        {
            MyList<int> list = new MyList<int>();
            Console.WriteLine(list.IsChecked);
            list.Add(1);
            Console.WriteLine(list.IsChecked);
        }
    }
 
    public class MyList<T> : ObservableCollection<T>
    {        
        public bool IsChecked { get; private set; }
 
        public MyList()
        {
            IsChecked = true;
        }
 
        protected override void OnCollectionChanged(NotifyCollectionChangedEventArgs e)
        {
            IsChecked = false;
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4 из 5
Похожие ответы