ComponentDispatcher Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Habilita o controle compartilhado da bomba de mensagens entre Win32 e WPF em cenários de interoperação.
public ref class ComponentDispatcher abstract sealed
public static class ComponentDispatcher
type ComponentDispatcher = class
Public Class ComponentDispatcher
- Herança
-
ComponentDispatcher
Comentários
Embora a classe em si seja estática, todos os membros de ComponentDispatcher são específicos para um thread específico. Por exemplo, se você examinar o valor de IsThreadModal em dois threads diferentes, poderá obter valores diferentes.
Os métodos são estáticos, mas são apoiados por estruturas de dados por thread. Os métodos estáticos permitem o acesso singleton, mas o ComponentDispatcher está classificando as operações apropriadas por thread.
O proprietário da bomba de mensagem é definido pelo código que chama a função Win32 GetMessage. O proprietário chama RaiseThreadMessage cada mensagem de teclado. Esse método gera o ThreadFilterMessage evento com as mensagens contidas nos dados do evento. Se esse evento não for tratado, o proprietário aciona o ThreadPreprocessMessage evento com as mensagens contidas no argumento event.
Observação
Há suporte apenas para mensagens de teclado.
Propriedades
CurrentKeyboardMessage |
Obtém a última mensagem que foi gerada. |
IsThreadModal |
Obtém um valor que indica se o thread é modal. |
Métodos
PopModal() |
Chamado para indicar que um thread modal não é mais modal. |
PushModal() |
Chamado para indicar que o thread é modal. |
RaiseIdle() |
Chamado para indicar que um thread está ocioso. |
RaiseThreadMessage(MSG) |
Indica que uma nova mensagem está disponível para possível manipulação. |
Eventos
EnterThreadModal |
Ocorre quando um thread torna-se modal. |
LeaveThreadModal |
Ocorre quando um thread modal torna-se não modal. |
ThreadFilterMessage |
Ocorre quando a bomba de mensagens recebe uma mensagem do teclado. |
ThreadIdle |
Ocorre quando o thread está ocioso. |
ThreadPreprocessMessage |
Ocorre quando a bomba de mensagens recebe uma mensagem do teclado. |