共用方式為


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。 在設計時間,設計工具會將此值取代為自己的窗口目標,並快取原始值。

適用於

另請參閱