Триггер на изменение листа (списка) - 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;
}
}