HtmlTextWriter类的学习
在创建自定义控件的时候,如果控件继承自Control类,我们会发现有个Render方法,Render方法输出的是HtmlTextWriter类型的变量。
HtmlTextWriter继承于System.IO.TextWriter,
使用HtmlTextWriter的枚举有很多好处:比如可以获得IntelliSense支持,重要的是.net会对枚举的值自动进行类型检查
HtmlTextWriter的各种方法的参数取值包括以下三种类型的枚举:
1.HtmlTextWriterTag
指定可传递到 HtmlTextWriter 或 Html32TextWriter 对象输出流的 HTML 标记。
该枚举使输出流可以在响应 Web 请求时连同 HTML 服务器控件一起编写 HTML 标记。
成员如下
成员名称 |
说明 |
A |
指定 HTML a 元素。 |
Acronym |
指定 HTML acronym 元素。 |
Address |
指定 HTML address 元素。 |
Area |
指定 HTML area 元素。 |
B |
指定 HTML b 元素。 |
Base |
指定 HTML base 元素。 |
Basefont |
指定 HTML basefont 元素。 |
Bdo |
指定 HTML bdo 元素。 |
Bgsound |
指定 HTML bgsound 元素。 |
Big |
指定 HTML big 元素。 |
Blockquote |
指定 HTML blockquote 元素。 |
Body |
指定 HTML body 元素。 |
Br |
指定 HTML br 元素。 |
Button |
指定 HTML button 元素。 |
Caption |
指定 HTML caption 元素。 |
Center |
指定 HTML center 元素。 |
Cite |
指定 HTML cite 元素。 |
Code |
指定 HTML code 元素。 |
|
指定 HTML col 元素。 |
Colgroup |
指定 HTML colgroup 元素。 |
Dd |
指定 HTML dd 元素。 |
|
指定 HTML cel 元素。 |
Dfn |
指定 HTML dfn 元素。 |
Dir |
指定 HTML dir 元素。 |
Div |
指定 HTML div 元素。 |
Dl |
指定 HTML dl 元素。 |
Dt |
指定 HTML dt 元素。 |
Em |
指定 HTML em 元素。 |
Embed |
指定 HTML embed 元素。 |
Fieldset |
指定 HTML fieldset 元素。 |
Font |
指定 HTML font 元素。 |
Form |
指定 HTML form 元素。 |
Frame |
指定 HTML frame 元素。 |
Frameset |
指定 HTML frameset 元素。 |
H1 |
指定 HTML H1 元素。 |
H2 |
指定 HTML H2 元素。 |
H3 |
指定 HTML H3 元素。 |
H4 |
指定 HTML H4 元素。 |
H5 |
指定 HTML H5 元素。 |
H6 |
指定 HTML H6 元素。 |
Head |
指定 HTML head 元素。 |
Hr |
指定 HTML hr 元素。 |
Html |
指定 HTML html 元素。 |
I |
指定 HTML i 元素。 |
Iframe |
指定 HTML iframe 元素。 |
Img |
指定 HTML img 元素。 |
Input |
指定 HTML input 元素。 |
Ins |
指定 HTML ins 元素。 |
Isindex |
指定 HTML isindex 元素。 |
Kbd |
指定 HTML kbd 元素。 |
Label |
指定 HTML label 元素。 |
Legend |
指定 HTML legend 元素。 |
Li |
指定 HTML li 元素。 |
Link |
指定 HTML link 元素。 |
Map |
指定 HTML map 元素。 |
Marquee |
指定 HTML marquee 元素。 |
Menu |
指定 HTML menu 元素。 |
|
指定 HTML meta 元素。 |
Nobr |
指定 HTML nobr 元素。 |
Noframes |
指定 HTML noframes 元素。 |
Noscript |
指定 HTML noscript 元素。 |
Object |
指定 HTML object 元素。 |
Ol |
指定 HTML ol 元素。 |
Option |
指定 HTML option 元素。 |
P |
指定 HTML p 元素。 |
Param |
指定 HTML param 元素。 |
Pre |
指定 HTML pre 元素。 |
Q |
指定 HTML q 元素。 |
Rt |
指定 DHTML rt 元素,后者指定 ruby 元素的文本。 |
Ruby |
指定 DHTML ruby 元素。 |
S |
指定 HTML s 元素。 |
Samp |
指定 HTML samp 元素。 |
Script |
指定 HTML script 元素。 |
Select |
指定 HTML select 元素。 |
Small |
指定 HTML small 元素。 |
Span |
指定 HTML span 元素。 |
Strike |
指定 HTML strike 元素。 |
Strong |
指定 HTML strong 元素。 |
Style |
指定 HTML style 元素。 |
Sub |
指定 HTML sub 元素。 |
Sup |
指定 HTML sup 元素。 |
Table |
指定 HTML table 元素。 |
Tbody |
指定 HTML tbody 元素。 |
Td |
指定 HTML td 元素。 |
Textarea |
指定 HTML textarea 元素。 |
Tfoot |
指定 HTML tfoot 元素。 |
Th |
指定 HTML th 元素。 |
Thead |
指定 HTML thead 元素。 |
Title |
指定 HTML title 元素。 |
Tr |
指定 HTML tr 元素。 |
Tt |
指定 HTML tt 元素。 |
U |
指定 HTML u 元素。 |
Ul |
指定 HTML ul 元素。 |
Unknown |
不识别作为 HTML 标记传递的 String。 |
Var |
指定 HTML var 元素。 |
Wbr |
指定 HTML wbr 元素。 |
Xml |
指定 HTML xml 元素。 |
代码示例:
----------――――――――――――――――――――――――――――――――
[C#]
// Control HTML encoding of attributes.
// Simple known values do not need encoding.
writer.AddAttribute(HtmlTextWriterAttribute.Alt, "Encoding, \"Required\"", true);
writer.AddAttribute("myattribute", "No "encodig " required", false);
writer.RenderBeginTag(HtmlTextWriterTag.Img);
writer.RenderEndTag();
writer.WriteLine();
----------――――――――――――――――――――――――――――――――
2.HtmlTextWriterAttribute
指定 HTML 属性,在处理 Web 请求时,HtmlTextWriter 或 Html32TextWriter 对象将该属性写入 HTML 元素的开始标记。
此枚举经常与 HtmlTextWriter 类的下列方法联合使用:AddAttribute、GetAttributeName、IsAttributeDefined 和 RenderBeginTag。
成员如下:
成员名称 |
说明 |
Accesskey |
指定将 HTML acesskey 属性写入标记。 |
Align |
指定将 HTML align 属性写入标记。 |
Alt |
指定将 HTML alt 属性写入标记。 |
Background |
指定将 HTML background 属性写入标记。 |
Bgcolor |
指定将 HTML bgcolor 属性写入标记。 |
Border |
指定将 HTML border 属性写入标记。 |
Bordercolor |
指定将 HTML bordercolor 属性写入标记。 |
Cellpadding |
指定将 HTML cellpadding 属性写入标记。 |
Cellspacing |
指定将 HTML cellspacing 属性写入标记。 |
Checked |
指定将 HTML checked 属性写入标记。 |
Class |
指定将 HTML class 属性写入标记。 |
Cols |
指定将 HTML cols 属性写入标记。 |
Colspan |
指定将 HTML colspan 属性写入标记。 |
Disabled |
指定将 HTML disabled 属性写入标记。 |
For |
指定将 HTML for 属性写入标记。 |
Height |
指定将 HTML height 属性写入标记。 |
Href |
指定将 HTML href 属性写入标记。 |
Id |
指定将 HTML id 属性写入标记。 |
Maxlength |
指定将 HTML maxlength 属性写入标记。 |
Multiple |
指定将 HTML multiple 属性写入标记。 |
Name |
指定将 HTML name 属性写入标记。 |
Nowrap |
指定将 HTML nowrap 属性写入标记。 |
Onchange |
指定将 HTML onchange 属性写入标记。 |
Onclick |
指定将 HTML onclick 属性写入标记。 |
ReadOnly |
指定将 HTML readonly 属性写入标记。 |
Rows |
指定将 HTML rows 属性写入标记。 |
Rowspan |
指定将 HTML rowspan 属性写入标记。 |
Rules |
指定将 HTML rules 属性写入标记。 |
Selected |
指定将 HTML selected 属性写入标记。 |
Size |
指定将 HTML size 属性写入标记。 |
Src |
指定将 HTML src 属性写入标记。 |
Style |
指定将 HTML style 属性写入标记。 |
Tabindex |
指定将 HTML tabindex 属性写入标记。 |
Target |
指定将 HTML target 属性写入标记。 |
Title |
指定将 HTML title 属性写入标记。 |
Type |
指定将 HTML type 属性写入标记。 |
Valign |
指定将 HTML valign 属性写入标记。 |
Value |
指定将 HTML value 属性写入标记。 |
Width |
指定将 HTML width 属性写入标记。 |
Wrap |
指定将 HTML wrap 属性写入标记。 |
代码示例:
[C#]
writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "alert('Hello');");
3.HtmlTextWriterStyle
指定可用于 HtmlTextWriter 或 Html32TextWriter 对象输出流的 HTML 样式。
HtmlTextWriter 和 Html32TextWriter 对象使用这些枚举值将 HTML 字符串注册为正确的 HTML 样式。
成员如下:
成员名称 |
说明 |
BackgroundColor |
指定 HTML backgroundcolor 样式。 |
BackgroundImage |
指定 HTML backgroundimage 样式。 |
BorderCollapse |
指定 HTML bordercollapse 样式。 |
BorderColor |
指定 HTML bordercolor 样式。 |
BorderStyle |
指定 HTML borderstyle 样式。 |
BorderWidth |
指定 HTML borderwidth 样式。 |
Color |
指定 HTML color 样式。 |
FontFamily |
指定 HTML fontfamily 样式。 |
FontSize |
指定 HTML fontsize 样式。 |
FontStyle |
指定 HTML fontstyle 样式。 |
FontWeight |
指定 HTML fontweight 样式。 |
Height |
指定 HTML height 样式。 |
TextDecoration |
指定 HTML textdecoration 样式。 |
Width |
指定 HTML width 样式。 |
代码示例:
-----――――――――――――――――――――――――――――――――
[C#]
writer.AddStyleAttribute(HtmlTextWriterStyle.Color, "Red");
------―――――――――――――――――――――――――――――――