Partager via


ComponentDispatcher Classe

Définition

Active le contrôle partagé de la pompe de messages entre Win32 et WPF dans les scénarios d'interopérabilité.

public ref class ComponentDispatcher abstract sealed
public static class ComponentDispatcher
type ComponentDispatcher = class
Public Class ComponentDispatcher
Héritage
ComponentDispatcher

Remarques

Bien que la classe elle-même soit statique, tous les membres de ComponentDispatcher sont spécifiques à un thread particulier. Par exemple, si vous examinez la valeur de IsThreadModal sur deux threads différents, vous pouvez obtenir des valeurs différentes.

Les méthodes sont statiques, mais elles sont soutenues par des structures de données par thread. Les méthodes statiques autorisent l’accès singleton, mais le ComponentDispatcher trie les opérations appropriées par thread.

Le propriétaire de la pompe de messages est défini par le code qui appelle la fonction Win32 GetMessage. Le propriétaire appelle RaiseThreadMessage pour chaque message clavier. Cette méthode déclenche l’événement ThreadFilterMessage avec les messages contenus dans les données d’événement. Si cet événement n’est pas géré, le propriétaire lève l’événement ThreadPreprocessMessage avec les messages contenus dans l’argument d’événement.

Notes

Seuls les messages clavier sont pris en charge.

Propriétés

CurrentKeyboardMessage

Obtient le dernier message déclenché.

IsThreadModal

Obtient une valeur qui indique si le thread est modal.

Méthodes

PopModal()

Appelé pour indiquer qu'un thread modal n'est plus modal.

PushModal()

Appelé pour indiquer que le thread est modal.

RaiseIdle()

Appelé pour indiquer qu'un thread est inactif.

RaiseThreadMessage(MSG)

Indique qu'un nouveau message est disponible pour une gestion éventuelle.

Événements

EnterThreadModal

Se produit lorsqu'un thread devient modal.

LeaveThreadModal

Se produit lorsqu'un thread modal devient non modal.

ThreadFilterMessage

Se produit lorsque la pompe de messages reçoit un message du clavier.

ThreadIdle

Se produit lorsque le thread est inactif.

ThreadPreprocessMessage

Se produit lorsque la pompe de messages reçoit un message du clavier.

S’applique à

Voir aussi