兩個WebUserControl之間傳值

2022-01-20 18:19:14 字數 1954 閱讀 4064

兩個webusercontrol之間傳值,網上的**有,直接從usercontrol1中定位到usercontrol2的寫法,偶合性很強,感覺不太好,於是提供另外的寫法。

用乙個容器container.aspx來放兩個webusercontrol,分別是uc1和uc2。現在假設要從uc1的乙個事件觸發,把uc1中的乙個值傳到uc2中。

1.新增乙個class,**如下:

using

system;

using

system.data;

using

system.configuration;

using

system.web;

using

system.web.security;

using

system.web.ui;

using

system.web.ui.webcontrols;

using

system.web.ui.webcontrols.webparts;

using

system.web.ui.htmlcontrols;

//delegate要寫在共用class中,這樣的話,才可以讓pegatronevent在不同的頁面都引用到。

public

delegate

void

treevieweventhandler(

object

sender, pegatronevent e);

public

class

pegatronevent : eventargs

//宣告變數

public

string

pegatrondeptid;

}2.uc1中寫入事件

//給這個usercontrol加乙個event

public

event

treevieweventhandler deptinfohandler;

//treeview的事件,當然用其他事件都ok。

protected

void

treeview1_selectednodechanged(

object

sender, eventargs e)

3.在放兩個usercontrol的頁面container.aspx中加入**:

*這是整個過程的最關鍵點,相當於在兩個usercontrol之間加乙個橋梁。

using

system;

using

system.data;

using

system.configuration;

using

system.collections;

using

system.web;

using

system.web.security;

using

system.web.ui;

using

system.web.ui.webcontrols;

using

system.web.ui.webcontrols.webparts;

using

system.web.ui.htmlcontrols;

public

partial

class

ui_departcontainer : system.web.ui.page

public

void

uc1_deptinfohandler(

object

sender, pegatronevent e)

}4.在uc2中獲得值,不多說了,**如下:

private

string

_deptid;

public

string

deptid

set}

兩個明星 兩名水貨 兩個英超解說

兩個明星 兩名水貨 兩個英超解說 來自 撓頭蛇的blog 2006 03 30 08 54 42 大中小1 在這場算不上非常精彩的冠軍盃八強戰中,非常精彩的是兩名阿根廷人的表現。乙個是黃色的里克爾梅,他的護球簡直令人絕望 另乙個是藍黑的薩內蒂,他的狂飆突進幾乎讓人忘記了現代足球的陣型這個概念。看了里...

兩個明星 兩名水貨 兩個英超解說

兩個明星 兩名水貨 兩個英超解說 來自 撓頭蛇的blog 2006 03 30 08 54 42 大中小1 在這場算不上非常精彩的冠軍盃八強戰中,非常精彩的是兩名阿根廷人的表現。乙個是黃色的里克爾梅,他的護球簡直令人絕望 另乙個是藍黑的薩內蒂,他的狂飆突進幾乎讓人忘記了現代足球的陣型這個概念。看了里...

兩個棧實現佇列 兩個佇列實現棧

1.兩個棧實現佇列 大致思路 入佇列時,將元素入棧s1,出佇列時,將s2中的元素出棧即可,如果s2為空,那麼將s1中 s1.size 1 個元素出棧,加入到s2中,然後將s1中最後乙個元素出棧,即完成了出佇列的操作 include using namespace std include includ...