c 委託和事件例項學習

2022-09-26 09:54:37 字數 1796 閱讀 3576

common.cs:

複製** **如下:

using程式設計客棧 system;

using system.collections.generic;

using system.text;

namespace delegateandevent.app_code

public string hicsharp(string name)

#endregion

#region 定義委託

//定義委託和定義方法類似,區別是加個delegate.去掉方法體,只寫方法簽名.

public delegate string sayhi(string name);

//委託可以像普通變數一樣使用.區別在於可以把多個方法賦給委託.

public sayhi dlgt1, dlgt2;

//使用委託

public void usedelegate(s程式設計客棧tring name, sayhi sayhi)

#endregion

#region 事件

//宣告事件

public event sayhi hievent;

//觸發事件

public void causeevent() }

#endregion

} }

using system;

using system.collections.generic;

using system.text;

namespace delegateandevent.app_code

public string hicsharp(string name)

#endregion

#region 定義委託

//定義委託和定義方法類似,區別是加個delegate.去掉方法體,只寫方法簽名.

public delegate string sayhi(string name);

//委託可以像普通變數一樣使用.區別在於可以把多個方法賦給委託.

public sayhi dlgt1, dlgt2;

//使用委託

public void usedelegate(string name, sayhi sayhi)

#endregion

#region 事件

//宣告事件

public event sayhi hievent;

//觸發事件

public void causeevent() }

#endregion

} }

mainfrm.cs:

複製** **如下:

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.text;

using system.windows.forms;

using delegateandevent.app_code;

namespace www.cppcns.comdelegateandevent

private void btnok_click(object sender, eventargs e) }

}

本文標題: c# 委託和事件例項學習

本文位址:

C 委託和事件例項

當建立委託物件時,委託的引數型別必須與委託方法相對應。只要向建立委託物件的建構函式中輸入方法名稱example.method,委託就會直接繫結此方法。使用mydelegate.invoke string message 就能顯式呼叫委託方法。但在實際的操作中,我們無須用到 invoke 方法,而只要...

c 的委託和事件的例項學習

簡寫 委託簡而言之是將方法作為引數進行傳遞.1,宣告 傳入引數和返回需要一致 委託逆變 委託入參為基型別 public string method1 string public string method2 string public string method3 string public str...

C 委託,事件 例項

using system using system.collections.generic using system.linq using system.text namespace onkeydown internal class keyeventargs eventargs public cha...