1:委託是函式的指標:
2:方法簽名:引數型別 個數 順序 返回值;
3:delegate void speakdelegate();定義個委託委託的方法簽名要與想指向(引用)方法的方法簽名要一致;
例項化委託:方式1:speakdelegate speak=new speakdelegate(方法名)
speak();//執行的即使括號裡的方法名;
方式2:speak=方法名;speak();
3:使用等號指向方法是只能指向乙個方法;「+=」時就可以引用多個方法(這是就有了後面引用的方法將前面的方法覆蓋了);
委託的用處(為事件而生):
1:使用者控制項
2:多執行緒
委託事件:
事件: public event errorinfodelegate 事件名;
新增事件:這是就不能等於了table建生成事件;會自動生成個事件名(寫方法體和自定義控制項)
問題事件不能有返回值:
通過屬性
public string shu
//在前台事件不能有返回值所以在方法體裡給該屬性賦值;
}在自定義控制項外不可以訪問自定控制項中的控制項;
自定控制項中的委託
1 委託是函式的指標 2 方法簽名 引數型別 個數 順序 返回值 3 delegate void speakdelegate 定義個委託委託的方法簽名要與想指向 引用 方法的方法簽名要一致 例項化委託 方式1 speakdelegate speak new speakdelegate 方法名 spe...
使用委託在使用者自定義控制項中實現事件響應
假定使用者控制項 usercontrol.ascx 中包含按鈕控制項abutton,希望實現按abutton按鈕時,包含該使用者控制項的頁面可以接收到事件。為此,在使用者控制項和頁面的 中分別作了處理。usercontrol.ascx.cs中的處理 1.定義public的事件委託,如clickeve...
得到控制項事件中的全部委託
type btn typeof button type ctrl typeof control propertyinfo proinfo btn.getproperty events bindingflags.nonpublic bindingflags.instance eventhandlerl...