如果重載本身父類提供的enable屬性,將導(dǎo)致無法將子控件中的值用viewstate回傳,即無法保持狀態(tài)。所以最好自己定義該類屬性并實(shí)現(xiàn)。
定義屬性時(shí),如果是子控件本身屬性的反映,可以直接取其值,值將自動(dòng)保留,如果屬于自己定義的屬性,用viewState保留狀態(tài)
例如:
? /// <summary>
/// 文本框值 txtMD是一個(gè)Web TextBox
/// </summary>
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public string Text
{
get
{
if(txtMD.Text!="")
return txtMD.Text;
else
return "";
}
set
{???????????????
txtMD.Text=value;
}
}
?
自定義屬性:
? /// <summary>
/// 參考錄入窗口寬度
/// </summary>
[Bindable(true),
Category("Appearance"),
DefaultValue("50")]
public int TextBoxMaxLength
{
get
{
return ViewState[this.UniqueID+"TextBoxMaxLength"]==null?50:(int)ViewState[this.UniqueID+"TextBoxMaxLength"];
}
set
{
ViewState[this.UniqueID+"TextBoxMaxLength"]=value;
}
}
注意:加上this.UniqueID是區(qū)分多個(gè)相同控件在同一頁面上時(shí)的相同屬性。?
如果重載本身父類提供的enable屬性,將導(dǎo)致無法將子控件中的值用viewstate回傳,即無法保持狀態(tài)。所以最好自己定義該類屬性并實(shí)現(xiàn)。
定義屬性時(shí),如果是子控件本身屬性的反映,可以直接取其值,值將自動(dòng)保留,如果屬于自己定義的屬性,用viewState保留狀態(tài)
例如:
? /// <summary>
/// 文本框值 txtMD是一個(gè)Web TextBox
/// </summary>
[Bindable(true),
Category("Appearance"),
DefaultValue("")]
public string Text
{
get
{
if(txtMD.Text!="")
return txtMD.Text;
else
return "";
}
set
{???????????????
txtMD.Text=value;
}
}
?
自定義屬性:
? /// <summary>
/// 參考錄入窗口寬度
/// </summary>
[Bindable(true),
Category("Appearance"),
DefaultValue("50")]
public int TextBoxMaxLength
{
get
{
return ViewState[this.UniqueID+"TextBoxMaxLength"]==null?50:(int)ViewState[this.UniqueID+"TextBoxMaxLength"];
}
set
{
ViewState[this.UniqueID+"TextBoxMaxLength"]=value;
}
}
注意:加上this.UniqueID是區(qū)分多個(gè)相同控件在同一頁面上時(shí)的相同屬性。?
作者:qiuchun
來源:csdn.net
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
