91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET中HtmlTextWriter類如何使用

發布時間:2021-07-16 11:21:13 來源:億速云 閱讀:154 作者:Leah 欄目:編程語言

ASP.NET中HtmlTextWriter類如何使用,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

盡量使用內置的方法輸出標簽

寫過控件的人沒有人會說沒用過Render和RenderContents方法,其中關鍵的類就是用HtmlTextWriter類的一些方法把html標簽呈現出來,但其寫法不同,效果卻相同。如輸出一個下拉框:

public class DemoControl : Control      {    protected override void Render(HtmlTextWriter writer)    {  //1.以輸出字符串形式輸出html  /**//*  writer.Write("<select>");  writer.Write("<option value='0'>asp.net</option>");  writer.Write("<option value='1'>asp.net ajax</option>");  writer.Write("</select>");  */  //2.用.net內置推薦的方法輸出html  writer.RenderBeginTag(HtmlTextWriterTag.Select);  writer.AddAttribute(HtmlTextWriterAttribute.Value, "0");  writer.RenderBeginTag(HtmlTextWriterTag.Option);  writer.Write("asp.net");  writer.RenderEndTag();  writer.AddAttribute(HtmlTextWriterAttribute.Value, "1");  writer.RenderBeginTag(HtmlTextWriterTag.Option);  writer.Write("asp.net ajax");  writer.RenderEndTag();    }      }

當你熟悉這些方法后,請盡量使用這些方法

ASP.NET控件開發技巧之使用HtmlTextWriter類規范輸出標簽2.

分段呈現標簽

此方法等于為重構,當標簽呈現的比較多,請不要一步到底的寫下來,分部把需要的東西寫在各個方法里面再組合,
如http://www.cnblogs.com/Clingingboy/archive/2006/07/30/463471.html的示例三,說實話的,雖然用HtmlTextWriter的函數輸出標簽,但還不如直接輸出字符串來的明白,一大堆的RenderBeginTag和RenderEndTag方法。請分段呈現標簽,分拆函數。然后以Render開頭的函數命名,這樣看起來就清晰多了。

protected override void Render(HtmlTextWriter writer)  {      RenderTable(writer);  }   private void RenderTable(HtmlTextWriter writer)  {      writer.AddStyleAttribute(HtmlTextWriterStyle.BorderWidth, "0");      writer.RenderBeginTag(HtmlTextWriterTag.Table);      RnderPaymentMethod(writer);      RenderCreditCardNo(writer);      RenderCardholderName(writer);      RenderExpirationDate(writer);      RenderSubmitButton(writer);      writer.RenderEndTag();  }

ASP.NET控件開發技巧之使用HtmlTextWriter類規范輸出標簽3.

規范標簽ID命名

不要把控件的頭標簽把ID名字定死,防止名字重疊,可以把Control的UniqueID屬性賦給ID屬性,子標簽也一樣。可以以父標簽的id為前綴,然后再加以命名。另外的好處就是可以跟前端交互,靈活性增強。

//writer.AddAttribute(HtmlTextWriterAttribute.Id, "select1");  writer.AddAttribute(HtmlTextWriterAttribute.Id, this.UniqueID);  writer.RenderBeginTag(HtmlTextWriterTag.Select);  //以父標簽的id為前綴  writer.AddAttribute(HtmlTextWriterAttribute.Id, this.UniqueID+"_asp");  writer.RenderBeginTag(HtmlTextWriterTag.Option);  writer.Write("asp.net");  writer.RenderEndTag();  writer.RenderEndTag();

ASP.NET控件開發技巧之使用HtmlTextWriter類規范輸出標簽4.

判斷輸出動態屬性

如TextBox的Text屬性,當其屬性未設置時,呈現出來的標簽value屬性不呈現,即后端要判斷,不然則要呈現value=""這項工作比較繁瑣。

string text = this.Text;  if (text.Length > 0)  {      writer.AddAttribute(HtmlTextWriterAttribute.Value, text);  }

關于ASP.NET中HtmlTextWriter類如何使用問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

观塘区| 新巴尔虎左旗| 哈巴河县| 芮城县| 盐城市| 定襄县| 吉林市| 阿克| 巴楚县| 中宁县| 青川县| 富民县| 永平县| 普格县| 鹰潭市| 永和县| 万源市| 新营市| 淮安市| 永宁县| 新干县| 扶风县| 都安| 金秀| 陇南市| 化隆| 海林市| 汝南县| 阿拉善左旗| 沙田区| 商都县| 衡水市| 萝北县| 徐州市| 台中县| 汽车| 富顺县| 中方县| 乌拉特后旗| 漳浦县| 厦门市|