代码之家  ›  专栏  ›  技术社区  ›  Mohammad Dayyan

在自定义服务器控件中呈现模板标记中的控件?

  •  0
  • Mohammad Dayyan  · 技术社区  · 14 年前

    我在做一个自定义导航菜单,
    我在我的 MenuItem 类以允许用户将控件添加到其中。

    public class MenuItem : INamingContainer
    {
    .
    .
    .
        [PersistenceMode(PersistenceMode.InnerProperty)]
        public ITemplate Template { get; set; }
    }
    

    我可以在asp.net中添加标记,除了 Template 不渲染!!! 我没有收到任何异常或错误!

    <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>
    

    我如何渲染它们?

    1 回复  |  直到 14 年前
        1
  •  1
  •   VinayC    14 年前

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

    http://msdn.microsoft.com/en-us/library/36574bf6.aspx -快速入门见示例 http://msdn.microsoft.com/en-us/library/aa478964.aspx -这是更详细的文章