Чтобы создать событие в C #, вы можете следовать Стандартным шаблонам событий .NET .
Чтобы создать событие Changed
для свойства Something
пользовательского элемента управления, выполните следующие действия:
- Объявить событие
SomethingChanged
. Это может быть любой делегат, в качестве общего делегата вы можете положиться на EventHandler
делегат или EventHandler<T>
, в случае, если вы хотите иметь конкретный аргумент события вместо использования EventArgs
.
- Создать защищенный виртуальный
OnSomethingChanged
метод, который принимает аргументы события и отвечает за его инициирование. Так что вы должны поднять событие в теле, если этот метод.
- В установщике свойств проверьте, отличается ли это значение от текущего, назначьте его и вызовите
OnSomethingChanged
, чтобы вызвать событие.
* ** 1023 тысяча двадцать-дв * Пример
public EventHandler PlaceHolderChanged;
string placeholder;
public string PlaceHolder
{
get { return placeholder; }
set
{
if (placeholder != value)
{
placeholder = value;
OnPlaceHolderChanged(EventArgs.Empty);
}
}
}
protected virtual void OnPlaceHolderChanged(EventArgs e)
{
PlaceHolderChanged?.Invoke(this, e);
}