Freigeben über


ComponentDispatcher Klasse

Definition

Aktiviert in Interoperationsszenarios das freigegebene Steuerelement des Nachrichtenfilters zwischen Win32 und WPF.

public ref class ComponentDispatcher abstract sealed
public static class ComponentDispatcher
type ComponentDispatcher = class
Public Class ComponentDispatcher
Vererbung
ComponentDispatcher

Hinweise

Obwohl die Klasse selbst statisch ist, sind alle Member von ComponentDispatcher spezifisch für einen bestimmten Thread. Wenn Sie beispielsweise den Wert von IsThreadModal in zwei verschiedenen Threads untersuchen, erhalten Sie möglicherweise unterschiedliche Werte.

Die Methoden sind statisch, aber sie werden von Datenstrukturen pro Thread unterstützt. Die statischen Methoden ermöglichen den Singletonzugriff, aber sortiert ComponentDispatcher die entsprechenden Vorgänge pro Thread aus.

Der Besitzer der Nachrichtenpumpe wird durch den Code definiert, der die Win32-Funktion GetMessage aufruft. Der Besitzer ruft für jede Tastaturnachricht auf RaiseThreadMessage . Diese Methode löst das ThreadFilterMessage -Ereignis mit den nachrichten aus, die in den Ereignisdaten enthalten sind. Wenn dieses Ereignis nicht behandelt wird, löst der Besitzer das ThreadPreprocessMessage Ereignis mit den Meldungen aus, die im Ereignisargument enthalten sind.

Hinweis

Es werden nur Tastaturnachrichten unterstützt.

Eigenschaften

CurrentKeyboardMessage

Ruft die letzte ausgelöste Meldung ab.

IsThreadModal

Ruft einen Wert ab, mit dem angegeben wird, ob der Thread modal ist.

Methoden

PopModal()

Wird aufgerufen, um anzugeben, dass ein modaler Thread nicht mehr modal ist.

PushModal()

Wird aufgerufen, um anzugeben, dass der Thread modal ist.

RaiseIdle()

Wird aufgerufen, um anzugeben, dass sich ein Thread im Leerlauf befindet.

RaiseThreadMessage(MSG)

Gibt an, dass eine neue Meldung behandelt werden kann.

Ereignisse

EnterThreadModal

Tritt auf, wenn ein Thread modal wird.

LeaveThreadModal

Tritt auf, wenn ein modaler Thread nicht modal wird.

ThreadFilterMessage

Tritt auf, wenn der Nachrichtenfilter eine Tastaturmeldung empfängt.

ThreadIdle

Tritt auf, wenn sich der Thread im Leerlauf befindet.

ThreadPreprocessMessage

Tritt auf, wenn der Nachrichtenfilter eine Tastaturmeldung empfängt.

Gilt für:

Weitere Informationen