다음을 통해 공유


FrameworkElement.OnContextMenuOpening(ContextMenuEventArgs) 메서드

정의

처리되지 않은 ContextMenuOpening 라우트된 이벤트가 해당 경로에서 이 클래스에 도달할 때마다 호출됩니다. 이 이벤트에 대한 클래스 처리를 추가하려면 이 메서드를 구현합니다.

protected:
 virtual void OnContextMenuOpening(System::Windows::Controls::ContextMenuEventArgs ^ e);
protected virtual void OnContextMenuOpening (System.Windows.Controls.ContextMenuEventArgs e);
abstract member OnContextMenuOpening : System.Windows.Controls.ContextMenuEventArgs -> unit
override this.OnContextMenuOpening : System.Windows.Controls.ContextMenuEventArgs -> unit
Protected Overridable Sub OnContextMenuOpening (e As ContextMenuEventArgs)

매개 변수

e
ContextMenuEventArgs

이벤트 데이터를 포함하는 RoutedEventArgs입니다.

설명

이 메서드에는 기본 구현이 없습니다. 상속의 중간 클래스가 이 메서드를 구현한 경우에도 기본 구현을 호출해야 합니다.

이 메서드의 목적은 CLR(공용 언어 런타임) 이벤트 패턴 On* 메서드와 다소 유사합니다. 파생 클래스의 일치 이벤트를 instance 처리기 대신 클래스 처리기로 처리하는 수단을 제공합니다. 이 경우 일치하는 이벤트는 라우트된 이벤트입니다. On* 메서드의 구현 패턴은 라우트된 이벤트가 반드시 처리기를 호출하는 요소가 아니라 자식 요소에 의해 발생되었을 수 있기 때문에 라우트된 이벤트에 대해 다릅니다. 따라서 구현은 이벤트 인수의 원본 속성을 고려해야 합니다(대부분의 경우 이벤트를 다시 발생시키려고 시도해서는 안 됨). 의 FrameworkElement 서브클래스는 경로를 따라 이벤트가 수신될 때 프라이빗 클래스 처리기 메서드를 호출하도록 선택할 수 있습니다. 한 가지 잠재적인 시나리오는 이벤트의 인수를 가져와서 의도적으로 이벤트를 처리된 것으로 표시하는 것입니다.

적용 대상