`
ayaya
  • 浏览: 448997 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

HtmlTextWriter

阅读更多
HtmlTextWriter的构造函数要求必须传递一个与TextWriter接口兼容的实例。大家可以根据需要选择合适的TextWriter接口实现类,因为该类的选择将决定最终生成的Html文本的输出方式,例如我想把结果输出到一个TextBox中,于是我就使用了StringWriter类的实例作为参数传入:
    StringWriter sw=new System.IO.StringWriter();
    HtmlTextWriter writer=new HtmlTextWriter(sw);
如果要获得结果,只需要使用sw.toString()就可以了。注意,HtmlTextWriter本身不提供输出方法或属性。

HtmlTextWriter常用方法

1. void RenderBeginTag(HtmlTextWriterTag tagKey)
    用于创建Html开始标签,如<body>,这里的HtmlTextWriterTag是一个枚举类型,里面有所有的标准Html4.0标签枚举值,如果我要使用添加body标签,就是RenderBeginTag(HtmlTextWriterTag.Body)

2. void RenderEndTag()
    与RenderBeginTag一一对应,有几个RenderBeginTag就必须有几个RenderEndTag,当然,RenderEndTag不一定要马上跟在对应的RenderBeginTag之后,要根据Html语句决定。如下面的例子:
<html>
    <head></head>
    <body></body>
</html>
上面一段是html基本结构,使用HtmlTextWriter生成就是
    writer.RenderBeginTag(HtmlTextWriterTag.Html);
    writer.RenderBeginTag(HtmlTextWriterTag.Head);
    writer.RenderEndTag();
    writer.RenderBeginTag(HtmlTextWriterTag.Body);
    writer.RenderEndTag();
    writer.RenderEndTag();
3. void AddAttribute()
    用于添加标签的属性,例如<img>标签的url属性、width属性等。使用该方法时要注意一点,AddAttribute语句必须出现在对应的RenderBeginTag的前面,请看下面的例子:
    writer.AddAttribute("url","../xxx.gif");
    writer.AddAttribute("width","50");
    writer.AddAttribute("height","50");
    writer.RenderBeginTag(HtmlTextWriterTag.Img);
    writer.RenderEndTag();

上面一段语句将添加<img url="../xxx.gif" width="50" height="50" />,可以发现所有的img标签属性的添加都在RenderBeginTag之前。

4. void Write()和void WriteLine()
用于写除标准Html标签以外的所有信息。
分享到:
评论

相关推荐

    HtmlTextWriter.zip_html 生成_zip

    HtmlTextWriter 生成html

    HtmlTextWriter c# vb.net后台输出html代码StringBuilder小工具

    HtmlTextWriter c# vb.net后台输出html代码StringBuilder小工具.把HTML代码粘贴到框里,点生成就可以得到后台输出HTML的代码。很方便实用。 需要源代码的也可以去codeplex下载

    asp.net实例代码protected override void Render(HtmlTextWriter writer)

    protected override void Render(HtmlTextWriter writer) { //把最终要输出的html压缩后再输出 StringWriter html = new StringWriter(); HtmlTextWriter tw = new HtmlTextWriter(html); base.Render(tw); string ...

    DynamicMarkup:在 C# 中生成 html 的简单方法,而不必求助于可怕的 HtmlTextWriter

    动态标记在 C# 中生成标记的简单方法,而不必求助于可怕的 HtmlTextWriter。 使用 C# 4 动态绑定提供一个以 jQuery API 为模型的漂亮界面(我们都知道它在操作标记方面非常出色) 目前文档很少,请查看 以获取更多...

    asp.net中导出Execl的方法

    System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter (tw); ctl.RenderControl(hw); HttpContext.Current.Response.Write(tw.ToString()); HttpContext.Current.Response.End(); 如果你的...

    关于导出excel时保持样式的一个方法

    HtmlTextWriter hw = new HtmlTextWriter(sw); RenderControl(hw); Response.Write(sb.ToString()); Response.End(); } 在其中要注意的就是Response时的编码格式. Response的编码格式应该...

    庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术

    3.3.1 使用htmltextwriter类输出 30 3.3.2 直接输出html标签 32 3.3.3 使用服务器控件的rendercontrol方法 33 3.4 addattributestorender方法 34 3.5 createchildcontrols方法 35 3.6 inamingcontainer接口 36 ...

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part1

    3.3.1 使用htmltextwriter类输出 30 3.3.2 直接输出html标签 32 3.3.3 使用服务器控件的rendercontrol方法 33 3.4 addattributestorender方法 34 3.5 createchildcontrols方法 35 3.6 inamingcontainer接口 36 ...

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part2

    3.3.1 使用htmltextwriter类输出 30 3.3.2 直接输出html标签 32 3.3.3 使用服务器控件的rendercontrol方法 33 3.4 addattributestorender方法 34 3.5 createchildcontrols方法 35 3.6 inamingcontainer接口 36 ...

    庖丁解牛纵向切入ASP.NET 3.5控件和组件开发技术.pdf

    3.3.1 使用htmltextwriter类输出30 3.3.2 直接输出html标签32 3.3.3 使用服务器控件的rendercontrol方法33 3.4 addattributestorender方法34 3.5 createchildcontrols方法35 3.6 inamingcontainer接口36 3.7 ...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    手动优化了PDF的书签,书签可折叠,书签链接以目录方式保存,多达1000多页,每页都做了书签定位,手都累酸啦。 ============================== 因权限只能到60MB,分卷压缩了,共3个压缩包,需下载完3个一起解压, ...

    asp.net技术内幕(1)

    第一部分 使用ASP.NET Web表单 &lt;br&gt;第1章 建立ASP.NET页面 &lt;br&gt;1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    asp.net技术内幕(2)

    第一部分 使用ASP.NET Web表单 &lt;br&gt;第1章 建立ASP.NET页面 &lt;br&gt;1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    asp.net技术内幕(5)

    第一部分 使用ASP.NET Web表单 &lt;br&gt;第1章 建立ASP.NET页面 &lt;br&gt;1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    asp.net技术内幕(4)

    第一部分 使用ASP.NET Web表单 &lt;br&gt;第1章 建立ASP.NET页面 &lt;br&gt;1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    asp.net技术内幕(3)

    第一部分 使用ASP.NET Web表单 &lt;br&gt;第1章 建立ASP.NET页面 &lt;br&gt;1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    ASP.NET4高级程序设计(第4版) 3/3

    内容简介  《ASP.NET 4高级程序设计(第4版)》是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET4的各种特性及其背后的工作原理,并给出了许多针对如何构建复杂、可扩展的网站从实践中得出的建议。书中还深入讲述了其他...

Global site tag (gtag.js) - Google Analytics