ASP.NET在设计时获取页面控件集合

时间:2012-01-26 11:18:15

标签: asp.net design-time rendercontrol controlcollection

在尝试使用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方法将呈现&#39; label1&#39;,&#39; MyControl1&#39;和&#39; Button1&#39;。表单中的头部和所有div都被忽略了。

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

Page
 Label
 MyControl
 Button
 HtmlForm
  LiteralControl

这是在运行时的样子:

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

这里有什么想法吗?

0 个答案:

没有答案