你能解释一下有关受保护覆盖​​的方法无效渲染(HtmlTextWriter hw)

时间:2016-05-12 08:18:46

标签: c# asp.net render htmltextwriter

我对方法名称是渲染有一些好奇心。

有一些关于打印Page Index Number,

的代码示例
[Paging.cs source]
    protected override void Render(HtmlTextWriter hw)
    {
        StringBuilder sb = new StringBuilder();
        sb.Append("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr>");
        sb.Append("<td width=\"18\" align=\"center\" valign=\"bottom\"><a onfocus=\"blur();\" 
        class=\"pager\" href=\"javascript:" 
        + Page.ClientScript.GetPostBackEventReference(this, i.ToString()) + "\">
        <span style=\"width:18px;height:15px;cursor:hand;\">" + i + "</span></a></td>");
        sb.Append("</table>");
        hw.Write(sb.ToString());
    }

[default.aspx source]
<%@ Register Assembly="Control" Namespace="Control" TagPrefix="cc1" %>
<cc1:Paging ID="pg_Addr" runat="server" OnPageChanged="pg_Addr_PageChanged" />

你能否轻松解释一下方法

  
      
  1. protected override void Render(HtmlTextWriter hw)和
  2.   
  3. Page.ClientScript.GetPostBackEventReference
  4.   

已经在搜索MSDN和内容 我原本应该明白,但我不能确定。

这些方法只是用于后面代码中的Html Tag吗?

我想了解工作程序。

1 个答案:

答案 0 :(得分:0)

HtmlTextWriter用于将HTML呈现给ASP.Net网页。此类封装了用于将内容(HTML)写入网页的输出流,并提供了许多简化HTML编写的辅助方法。

Render方法发送HTML以响应Web请求并为ASP.NET页面生成内容。

在您的代码段中,您的Render方法正在创建HTML Table,并将其写入HtmlTextWriter,然后将准备要在客户端浏览器上呈现的内容。

Page.ClientScript.GetPostBackEventReference,返回一个可在客户端事件中使用的字符串,以便回发到服务器。

在第一个参数中,它采用服务器控件来处理服务器上的回发。它返回一个字符串,可以在客户端上将其视为启动回发的脚本。

有关GetPostBackEventReference here的更多信息。