1

在尝试使用 RenderControl 方法在设计时(在 UITypeEditor 中)从 Web.UI.Page 捕获 HTML 时,我注意到只有服务器控件正在呈现。

所以,给定这个 aspx 页面:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>WebForm1</title>
</head>
<body>
<form id="form1" runat="server">

    Some text

    <asp:Label runat="server" ID="label1">label1</asp:Label> 

    <div>
        <cc1:MyControl ID="MyControl1" runat="server" BorderStyle="Solid" Height="117px" Width="341px" />
    </div>    

    <div style="margin-top:30px;">
        <asp:Button ID="Button1" runat="server" Text="Button" />
    </div>    

</form>
</body>
</html>

RenderControl 方法将渲染“label1”、“MyControl1”和“Button1”。表格中的头部和所有 div 都被忽略。

我决定在设计时查看页面的控制树,这就是我得到的:

Page
 Label
 MyControl
 Button
 HtmlForm
  LiteralControl

这是它在运行时的样子:

webform1_aspx
 LiteralControl
 HtmlHead
  HtmlTitle
 LiteralControl
 HtmlForm
  LiteralControl
  Label
  LiteralControl
  MyControl
  LiteralControl
  Button
  LiteralControl
 LiteralControl

有什么想法吗?

4

0 回答 0