다음을 통해 공유


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(Extensible Application Markup Language) 연결된 속성 사용은 없습니다. XAML(Extensible Application Markup Language)에서 처리기를 추가하려고 하면 안 되며, 코드의 처리기는 프레젠테이션(PresentationSource) 콘텐츠의 호스트 역할을 하는 개체에만 배치해야 합니다. 이러한 처리기는 개체 초기화 중에만 연결되어야 하며 Dispose 메서드 또는 이와 동등한 개체 정리에서 명시적으로 제거해야 합니다.

이 이벤트는 라우트된 이벤트이지만 일반적인 애플리케이션 시나리오에서 이 이벤트 처리와 관련된 요소 수가 상대적으로 적기 때문에 일반 라우트된 이벤트 동작과는 다른 특별한 제한 사항이 있습니다.

  • UIElement 또는 ContentElementAddHandler 메서드를 사용하여 처리기를 추가할 수 없습니다. AddSourceChangedHandler사용해야 합니다.

  • 이벤트 자체가 공용으로 노출되지 않으므로 C# +=-= 이벤트 처리기 구문 및 관련 언어별 처리기 구문은 지원되지 않습니다. 처리기를 직접 추가하고 제거하기 위한 PresentationSource 유틸리티 메서드만 지원됩니다.

  • 클래스 처리기는 허용되지 않습니다. 특히 SourceChanged에 대한 식별자 필드가 있지만 식별자는 public이 아니므로 클래스 생성자에서 이 이벤트에 대해 RegisterClassHandler 호출할 수 없습니다.

  • 모든 등록된 처리기는 처리기 중 하나가 인수를 처리된 것으로 표시하려고 하더라도 SourceChanged 이벤트를 받습니다.

적용 대상