PresentationSource.AddSourceChangedHandler Метод

Определение

Добавляет обработчик событий SourceChanged в предоставленный элемент.

public:
 static void AddSourceChangedHandler(System::Windows::IInputElement ^ element, System::Windows::SourceChangedEventHandler ^ handler);
[System.Security.SecurityCritical]
public static void AddSourceChangedHandler (System.Windows.IInputElement element, System.Windows.SourceChangedEventHandler handler);
public static void AddSourceChangedHandler (System.Windows.IInputElement element, System.Windows.SourceChangedEventHandler handler);
[<System.Security.SecurityCritical>]
static member AddSourceChangedHandler : System.Windows.IInputElement * System.Windows.SourceChangedEventHandler -> unit
static member AddSourceChangedHandler : System.Windows.IInputElement * System.Windows.SourceChangedEventHandler -> unit
Public Shared Sub AddSourceChangedHandler (element As IInputElement, handler As SourceChangedEventHandler)

Параметры

element
IInputElement

Элемент, в который добавляется обработчик.

handler
SourceChangedEventHandler

Добавляемая реализация обработчика.

Атрибуты

Комментарии

Несмотря на то, что говорится в блоке синтаксиса для этого события, не существует допустимого использования присоединенного свойства XAML. Не следует пытаться добавлять обработчики в XAML, а обработчики в коде следует размещать только на объектах, которые служат в качестве узлов для содержимого представления (PresentationSource ). Такие обработчики должны быть присоединены только во время инициализации объекта и должны быть явно удалены в методе Dispose или эквивалентной очистке объекта.

Несмотря на то, что это перенаправленное событие, на это событие накладываются специальные ограничения, которые отличаются от обычного поведения перенаправленного события из-за относительно небольшого числа элементов в типичном сценарии приложения, которые будут заниматься обработкой этого события.

  • Нельзя использовать методы UIElement или ContentElementAddHandler для добавления обработчиков. Для этого необходимо использовать AddSourceChangedHandler.

  • СинтаксисЫ C# += и -= обработчика событий, а также связанные синтаксисы обработчиков для конкретного языка не поддерживаются, так как само событие не предоставляется как открытое. Поддерживаются только служебные PresentationSource методы для непосредственного добавления и удаления обработчиков.

  • Обработчики классов не допускаются. В частности, вы не можете вызвать RegisterClassHandler это событие в конструкторе класса, так как хотя поле идентификатора существует для SourceChanged, идентификатор не является открытым.

  • Все зарегистрированные обработчики получат событие SourceChanged, даже если один из обработчиков попытается пометить аргументы как обрабатываемые.

Применяется к