【原創(chuàng)】給自定義控件.ascx文件傳參數(shù)并傳值 ,讓你定義的控件可用性更大
在網(wǎng)上查找了半天,終于還是沒(méi)有結(jié)果 最后看到一個(gè)人發(fā)的代碼才激發(fā)了點(diǎn)靈感
在控件.ascx.cs聲明控件屬性
private int _ClassID = 0;
public int ClassID
{
get { return _ClassID; }
set { _ClassID= value; }
}
在aspx頁(yè)面 <uc1:TC ID="TID" runat="server" ClassID="100" />這樣可以給想要傳參數(shù)的控件傳參數(shù)傳值,
在aspx頁(yè)面
<uc1:UC_UserClass id="UC_UserClass1" runat="server"></uc1:UC_UserClass>
后臺(tái).aspx.cs代碼
protected UC_UserClass UC_UserClass1;
這句是重點(diǎn),默認(rèn)我們?cè)谔砑拥臅r(shí)候是不會(huì)添加的,
在VS2005里很好用但是在VS2003里面就麻煩了,要自己手動(dòng)來(lái)添加,而且變量名要跟前面頁(yè)面中一樣
以前用的VS2005開(kāi)發(fā)一點(diǎn)問(wèn)題都沒(méi)有,現(xiàn)在再回頭用了VS2003感覺(jué)很郁悶
好不容易才搞定 朋友們可以試一下哦。
if(!Page.IsPostBack)
{
UC_UserClass1.ClassID=123456789; //你想傳的值
}
//這樣就可以給他傳值了
//下面還可以獲得自定義控件上的控件
DropDownList drp1=UC_UserClass1.FindControl("drp1") as DropDownList;
當(dāng)然除了傳值還可以調(diào)用里面的public方法和public函數(shù)
解決了問(wèn)題感覺(jué)好輕松??!
更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄