Мне нужен .net Collection, который имеет события Add и Remove. Существует ли предварительно сделанная версия, которая имеет это?
Например, я обновил бы некоторый внутренний счетчик, когда пользователь добавляет объект к списку через событие. (Едва ли, что я планирую сделать.)
Попробуйте ObservableCollection
он поддерживает INotifyCollectionChanged
, который поставляет события для каждого аспекта модификации коллекции.
Namespace: System.Collections.ObjectModel
Assembly: WindowsBase.dll
ObservableCollection
OTOH, это не так уж и сложно. Просто создайте класс, реализующий IList и обертывающий внутренний экземпляр List
Вы всегда можете сделать приватный список<...>
и затем получить доступ методом:
private List<string> listOfStrings = new List<string>;
public void AddToList(string s)
{
// Do your work
listOfStrings.Add(s);
}
или вы можете перегрузить его и добавлять события, как вам заблагорассудится.
.Вы также можете написать пользовательскую легковесную обертку, если хотите оптимизировать скорость за счет гибкости.
.Не то, чтобы я знаю, но это было бы довольно легко реализовать, вы можете просто создать свои собственные методы добавления и удаления, или вы можете использовать индексатор. Тогда вы можете делать все, что угодно с точки зрения событий.
.