Share via


ControlDesigner.WndProc(Message) 方法

定義

處理 Windows 訊息,並選擇性地傳送它們至控制項。

protected:
 virtual void WndProc(System::Windows::Forms::Message % m);
protected virtual void WndProc (ref System.Windows.Forms.Message m);
abstract member WndProc : Message -> unit
override this.WndProc : Message -> unit
Protected Overridable Sub WndProc (ByRef m As Message)

參數

m
Message

要處理的 Message

備註

這個方法會針對控制項通常會接收的每個訊息呼叫。 這可讓設計工具預先處理訊息,再選擇性地將它們路由傳送至控制項。

若要將訊息傳送至控制項的 Control.WndProc 方法,請在控制項的設計工具上呼叫 WndProc

注意

設計工具會篩選訊息,因此不會將某些訊息傳送至 控制項。 例如,設計工具會攔截滑鼠訊息。 如果這不是您想要的行為,請改為呼叫 DefWndProc

傳遞 m 為參數。 您可以選擇性地改變或建立新的 System.Windows.Forms.Message ,以傳遞至控制項的 方法。

下表顯示訊息流程。

沒有設計工具 使用設計工具
USER32

Control.WndProc

Control.DefWndProc

USER32
USER32

Control.Designer. WndProc

DefWndProc

Control.WndProc

Control.DefWndProc

USER32

設計工具會藉由取代 Control.WindowTarget 控制項上的 屬性來攔截訊息。 通常, WindowTarget 指向 NativeWindow 控制項中包含的 。 在設計階段期間,設計工具會將它取代為自己的視窗目標,並快取原始值。

適用於

另請參閱