
AddAttribute ——已重载。 对于 HtmlTextWriter 对象通过对 RenderBeginTag 方法的后续调用创建的元素,向其开始标记中添加指定的标记属性和值。
AddStyleAttribute ——已重载。 对于 HtmlTextWriter 对象通过对 RenderBeginTag 方法的后续调用创建的元素,向其开始标记中添加标记样式属性。
RenderBeginTag ——已重载。 将标记元素的开始标记写入到输出流。
RenderEndTag ——将标记元素的结束标记写入到输出流。
Write ——已重载。 已重写。 将指定数据类型连同任何挂起的制表符间距一起写入到输出流。
WriteBreak ——将 <br />标记元素写入到输出流。
注意:从Control类派生的基础控件是重写Render方法来使用HtmlTextWriter类的方法来输出HTML内容到浏览器的,而派生于WebControl类的自定义控件则是通过重写RenderContents这个方法来完成该功能。
例如下面代码是在RenderContens方法里利用HtmlTextWriter类的方法来生成HTML表格的。
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(" ")
34 writer.RenderEndTag()
35
36 writer.RenderEndTag()
37 }
38
39 // close table
40 writer.RenderEndTag()
41 }
42 }
43 }
通过<%%>内写入java代码即可实现,不过真正开发一般不这样做,要使用EL或OGNL表达式<table> <tr> <%for(int i = 0i <ni++){ %> <td> </td> <% } %> </tr></table></p></p>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)