共用方式為


HOW TO:從原生 C++ 類別接收 Windows Form 事件

更新:2007 年 11 月

您可以啟用原生 C++ 類別,以接收來自 Windows Form 控制項或使用 MFC 巨集對應格式的其他表單所引發 Managed 事件的回呼。在對話方塊和檢視中的接收事件類似執行控制項的相同工作。

若要進行這項工作,您必須:

範例

此範例會繼續進行您之前在 HOW TO:使用 Windows Form 執行 DDX/DDV 資料繫結中的工作。

現在,您會針對 Managed Click 事件,將 MFC 控制項 (m_MyControl) 與稱為 OnClick 的 Managed 事件處理常式委派產生關聯。

將程式碼的第一行加入到 BOOL CMFC01Dlg::OnInitDialog 的實作。

將委派對應和 OnClick 定義加入到類別 CMFC01Dlg : public CDialog 宣告中的 public 區段。

m_MyControl.GetControl()->button1->Click += MAKE_DELEGATE( System::EventHandler, OnClick );

// delegate map
BEGIN_DELEGATE_MAP( CMFC01Dlg )
EVENT_DELEGATE_ENTRY( OnClick, System::Object^, System::EventArgs^ )
END_DELEGATE_MAP()

   void OnClick( System::Object^ sender, System::EventArgs^ e ) {}

請參閱

參考

MAKE_DELEGATE

BEGIN_DELEGATE_MAP

END_DELEGATE_MAP

EVENT_DELEGATE_ENTRY