程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> 如何理解HtmlTextWriter類

如何理解HtmlTextWriter類

編輯:關於C#
 

HtmlTextWriter是專門用於把HTML內容輸出到浏覽器中的一個類,下面是該類支持的部分方法:

AddAttribute ——已重載。 對於 HtmlTextWriter 對象通過對 RenderBeginTag 方法的後續調用創建的元素,向其開始標記中添加指定的標記屬性和值。

AddStyleAttribute ——已重載。 對於 HtmlTextWriter 對象通過對 RenderBeginTag 方法的後續調用創建的元素,向其開始標記中添加標記樣式屬性。

RenderBeginTag ——已重載。 將標記元素的開始標記寫入到輸出流。

RenderEndTag ——將標記元素的結束標記寫入到輸出流。

Write ——已重載。 已重寫。 將指定數據類型連同任何掛起的制表符間距一起寫入到輸出流。
WriteBreak ——將 <br /> 標記元素寫入到輸出流。

注意:從Control類派生的基礎控件是重寫Render方法來使用HtmlTextWriter類的方法來輸出HTML內容到浏覽器的,而派生於WebControl類的自定義控件則是通過重寫RenderContents這個方法來完成該功能。

例如下面代碼是在RenderContens方法裡利用HtmlTextWriter類的方法來生成HTML表格的。

 

Code
 1 using System;
 2 using System.Web.UI;
 3 using System.Web.UI.WebControls;
 4 using System.Drawing;
 5 
 6 namespace myControls
 7 {
 8     public class ColorTable : WebControl
 9     {
10         protected override void RenderContents(HtmlTextWriter writer)
11         {
12             // Get list of colors
13             KnownColor[] colors = (KnownColor[])Enum.GetValues(typeof(KnownColor));
14 
15             // Render opening table tag
16             writer.AddAttribute(HtmlTextWriterAttribute.Border, "1");
17             writer.RenderBeginTag(HtmlTextWriterTag.Table);
18 
19             // Render table body
20             foreach (KnownColor colorName in colors)
21             {
22                 writer.RenderBeginTag(HtmlTextWriterTag.Tr);
23 
24                 // Render first column
25                 writer.RenderBeginTag(HtmlTextWriterTag.Td);
26                 writer.Write(colorName);
27                 writer.RenderEndTag();
28 
29                 // Render second column
30                 writer.AddAttribute(HtmlTextWriterAttribute.Width, "50px");
31                 writer.AddAttribute(HtmlTextWriterAttribute.Bgcolor, colorName.ToString());
32                 writer.RenderBeginTag(HtmlTextWriterTag.Td);
33                 writer.Write("&nbsp;");
34                 writer.RenderEndTag();
35 
36                 writer.RenderEndTag();
37             }
38 
39             // close table
40             writer.RenderEndTag();
41         }
42     }
43 }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved