У меня есть объект типа Hashtable, необходимо создать событие, которое бы отслеживало добавление элемента и указывало бы ключ, по которому я добавляю элемент.
Я правильно понимаю, что если я хочу такое реализовать, мне придется создать свой класс по типу Hashtable, где я реализую все необходимые события?
Не нужно создавать свой собственный Hashtable полностью с нуля, вы можете расширить существующий:
class ItemAddedEventArgs : EventArgs
{
public object Key { get; }
public ItemAddedEventArgs(object key)
{
Key = key;
}
}
class MyHashtable : Hashtable
{
public event EventHandler<ItemAddedEventArgs> ItemAdded;
public override void Add(object key, object value)
{
base.Add(key, value);
ItemAdded?.Invoke(this, new ItemAddedEventArgs(key));
}
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей