Перейти к основному содержимому
Версия: 11.0.0

Обработчики событий класса

В WPF, обработчики событий можно добавить через вызов EventManager.RegisterClassHandler. Пример регистрации обработчика в WPF:

WPF
static MyControl()
{
EventManager.RegisterClassHandler(typeof(MyControl), MyEvent, HandleMyEvent));
}

private static void HandleMyEvent(object sender, RoutedEventArgs e)
{
}
Avalonia
static MyControl()
{
MyEvent.AddClassHandler<MyControl>((x, e) => x.HandleMyEvent(e));
}

private void HandleMyEvent(RoutedEventArgs e)
{
}

Обратите внимание, что для WPF, обработчки должен быть добавлен как статический метод, в то время как в Avalonia, он не является статическим: событие отправляется конкретному экземпляру. Параметр sender не нужен, все является строго типизированным.