HTML表进入内存流

时间:2012-04-10 13:30:11

标签: c# asp.net html

我目前正在使用C#编写asp.net页面。此页面包含一个按钮,一旦您单击,您将获得一个小的HTML表格,其中包含人员,手机号码和电子邮件地址。我想要做的是在代码中捕获这个HTML表及其在内存流或其他类型的流中的数据,以便进行一些操作。这是我的代码

<table id="tb" runat="server">
        <tr> 
            <td> Name </td>
            <td> <asp:Label ID="lblName" runat="server" ></asp:Label>  </td>
        </tr>
         <tr> 
            <td> Phone </td>
            <td> <asp:Label ID="lblPhone" runat="server" ></asp:Label>  </td>
        </tr>
         <tr> 
            <td> Email </td>
            <td> <asp:Label ID="lblEmail" runat="server" ></asp:Label>  </td>
        </tr>
     </table> 

所以,如果有人能帮助我们完成这个过程,我会非常感激

1 个答案:

答案 0 :(得分:1)

虽然我真的不明白你为什么要这样做,你可以这么简单地做,你必须把id和runat服务器标签放在你的桌子上,你已经有了, 然后将此控件呈现为字符串:

标记:

<form id="form1" runat="server">
  <table id="tb" runat="server">
    <tr> 
        <td> Name </td>
        <td> <asp:Label ID="lblName" runat="server" ></asp:Label>  </td>
    </tr>
     <tr> 
        <td> Phone </td>
        <td> <asp:Label ID="lblPhone" runat="server" ></asp:Label>  </td>
    </tr>
     <tr> 
        <td> Email </td>
        <td> <asp:Label ID="lblEmail" runat="server" ></asp:Label>  </td>
    </tr>
  </table> 

  <hr />
  Rendered table :
  <hr />
  <asp:Label ID="lblRenderedTable" runat="server"></asp:Label>
  <hr />

</form>
代码背后的代码:

protected void Page_Load(object sender, EventArgs e)
{

  lblName.Text = "User Name";
  lblEmail.Text = "user@domain.com";
  lblPhone.Text = "555-4214";

  StringBuilder sb = new StringBuilder();
  StringWriter tw = new StringWriter(sb);
  HtmlTextWriter hw = new HtmlTextWriter(tw);
  tb.RenderControl(hw);
  string tableContents = sb.ToString();

  lblRenderedTable.Text = tableContents;
}