C# 在自定义ServerControl中呈现模板标记内的控件?

C# 在自定义ServerControl中呈现模板标记内的控件?,c#,asp.net,templates,render,C#,Asp.net,Templates,Render,我正在使用自定义导航菜单, 我在我的MenuItem类中添加了以下属性,允许用户将控件添加到其中 public class MenuItem : INamingContainer { . . . [PersistenceMode(PersistenceMode.InnerProperty)] public ITemplate Template { get; set; } } 我可以毫无困难地在asp.net中添加标记,但是模板中的控件不呈现!!!我不会收到任何异常或错误 <

我正在使用自定义导航菜单,
我在我的
MenuItem
类中添加了以下属性,允许用户将控件添加到其中

public class MenuItem : INamingContainer
{
.
.
.
    [PersistenceMode(PersistenceMode.InnerProperty)]
    public ITemplate Template { get; set; }
}
我可以毫无困难地在asp.net中添加标记,但是
模板中的控件不呈现!!!我不会收到任何异常或错误

<MdsMenu:Menu ID="Menu1" runat="server">
    <MdsMenu:MenuItem Text="MenuItem 01" href="#" />
    <MdsMenu:MenuItem Text="MenuItem 02" href="#">
        <MdsMenu:MenuItem href="#" Text="Template">
            <Template>
                <asp:Button ID="Button1" runat="server" Text="Button" />
            </Template>
        </MdsMenu:MenuItem>
    </MdsMenu:MenuItem>
    <MdsMenu:MenuItem Text="MenuItem 03" href="#" />
    <MdsMenu:MenuItem Text="MenuItem 04" href="#" />
</MdsMenu:Menu>


如何呈现它们?

您必须在某个容器中实例化模板。有关如何开发基于模板的控件,请参阅以下文章:

-参见快速启动示例 -这是一篇更详细的文章