ComponentDispatcher 类

定义

在互操作方案中,启用 Win32 与 WPF 之间的消息泵的共享控件。

public ref class ComponentDispatcher abstract sealed
public static class ComponentDispatcher
type ComponentDispatcher = class
Public Class ComponentDispatcher
继承
ComponentDispatcher

注解

尽管 类本身是静态的,但 的所有成员 ComponentDispatcher 都特定于特定线程。 例如,如果在两个不同的线程上检查 的值 IsThreadModal ,可能会得到不同的值。

这些方法是静态的,但它们由每个线程的数据结构提供支持。 静态方法允许单一实例访问, ComponentDispatcher 但 正在对每个线程的操作进行排序。

消息泵的所有者由调用 Win32 函数 GetMessage 的代码定义。 所有者为每个键盘消息调用 RaiseThreadMessage 。 此方法使用 ThreadFilterMessage 事件数据中包含的消息引发 事件。 如果未处理该事件,则所有者会使用事件参数中包含的消息引发 ThreadPreprocessMessage 事件。

注意

仅支持键盘消息。

属性

CurrentKeyboardMessage

获取已引发的最后一条消息。

IsThreadModal

获取一个值,该值指示线程是否是模式。

方法

PopModal()

调用以指示模式线程不再是模式。

PushModal()

调用以指示该线程是模式。

RaiseIdle()

调用以指示某线程处于空闲状态。

RaiseThreadMessage(MSG)

指示会对可能的处理显示新消息。

事件

EnterThreadModal

当线程变成模式线程时发生。

LeaveThreadModal

当模式线程变成非模式线程时发生。

ThreadFilterMessage

当消息泵接收键盘消息时发生。

ThreadIdle

当线程空闲时发生。

ThreadPreprocessMessage

当消息泵接收键盘消息时发生。

适用于

另请参阅