다음을 통해 공유


ComponentDispatcher 클래스

정의

상호 운용 시나리오에서 Win32와 WPF 간에 메시지 펌프의 공유 제어를 사용하도록 설정합니다.

public ref class ComponentDispatcher abstract sealed
public static class ComponentDispatcher
type ComponentDispatcher = class
Public Class ComponentDispatcher
상속
ComponentDispatcher

설명

클래스 자체는 정적 이지만 모든 멤버 ComponentDispatcher 특정 스레드에 해당 됩니다. 예를 들어의 값을 살펴보면 IsThreadModal 두 개의 다른 스레드에서 다르게 표시 될 수 있습니다.

메서드는 정적 있지만 스레드별 데이터 구조에서 지원 됩니다. 정적 메서드는 singleton 액세스를 허용 하지만 ComponentDispatcher 적절 한 스레드 작업 정렬 됩니다.

메시지 펌프의 소유자는 Win32 함수 GetMessage를 호출하는 코드에 의해 정의됩니다. 소유자를 호출 하 여 RaiseThreadMessage 모든 키보드 메시지에 대 한 합니다. 이 메서드는 ThreadFilterMessage 이벤트 메시지와 함께 데이터 이벤트를 포함 합니다. 소유자를 발생 시킵니다 해당 이벤트가 처리 되지 않은 경우는 ThreadPreprocessMessage 메시지와 함께 이벤트에 포함 된 이벤트 인수입니다.

참고

키보드 메시지에만 지원 됩니다.

속성

CurrentKeyboardMessage

마지막으로 발생한 메시지를 가져옵니다.

IsThreadModal

스레드가 모달인지 여부를 나타내는 값을 가져옵니다.

메서드

PopModal()

모달 스레드가 더 이상 모달이 아님을 나타내기 위해 호출됩니다.

PushModal()

스레드가 모달임을 나타내기 위해 호출됩니다.

RaiseIdle()

스레드가 유휴 상태임을 나타내기 위해 호출됩니다.

RaiseThreadMessage(MSG)

새 메시지를 가능한 처리에 사용할 수 있음을 나타냅니다.

이벤트

EnterThreadModal

스레드가 모달이 될 때 발생합니다.

LeaveThreadModal

모달 스레드가 모달이 아닌 스레드가 될 때 발생합니다.

ThreadFilterMessage

메시지 펌프가 키보드 메시지를 받을 때 발생합니다.

ThreadIdle

스레드가 유휴 상태일 때 발생합니다.

ThreadPreprocessMessage

메시지 펌프가 키보드 메시지를 받을 때 발생합니다.

적용 대상

추가 정보