ComponentDispatcher Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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. |