在父頁面處理使用者控制項的事件

2021-08-03 14:04:35 字數 705 閱讀 9081

i.直接新增事件

方法:在頁面的page_load事件裡寫如下**(ucequipmentquery1是使用者控制項):

dropdownlist ddl=(dropdownlist)ucequipmentquery1.findcontrol("dropdownlist1");

ddl.selectedindexchanged+=new eventhandler(ddl_selectedindexchanged);

在頁面寫事件處理函式:

private void ddl_selectedindexchanged(object sender, eventargs e)

ii.可以用event bubble來實現

方法:a.在使用者控制項的dropdownlist的事件裡呼叫raisebubbleevent方法,如:

private void dropdownlist1_selectedindexchanged(object sender, system.eventargs e)

b.在頁面**中過載onbubbleevent方法,如:

protected override bool onbubbleevent(object source,system.eventargs arg)

return base.onbubbleevent(source,arg);}

注:此種方法不適用於乙個頁面裡有多個使用者控制項的情況。

使用者控制項事件處理

本文討論使用者控制項返回事件的方法。假定使用者控制項 usercontrol.ascx 中包含按鈕控制項abutton,希望實現按abutton按鈕時,包含該使用者控制項的頁面可以接收到事件。為此,在使用者控制項和頁面的 中分別作了處理。usercontrol.ascx.cs中的處理 1.定義pub...

使用者控制項呼叫父頁面的方法

面演示了使用者控制項呼叫父頁面setlaeble方法。父頁面型別用反射的方法獲取,這避免了不同頁面呼叫同樣時,需要型別轉換的問題 不用寫很多case了 當然還有一種方法是父頁面去實現乙個介面,即去實現settextbox方法,uc把this.page轉成這個介面就可以了。使用者控制項 private...

頁面繼承父類,在父類中判斷使用者登入

現在一般的 都會設計到判斷使用者登入的問題,這其中有很多中解決方案。用物件導向的繼承思想來實現是一種較好的解決方案。很簡單,就是再父類 pagelogin.cs 中進行登入判斷,每個頁面都要繼承這個父類,父類中通過重寫oninit來實現再頁面page load之前進行登入驗證。pagelogin.c...