在自定义 ServerControl 中的 Template 标记内呈现控件?

发布于 2024-10-04 02:54:59 字数 941 浏览 10 评论 0原文

我正在开发自定义导航菜单,
我在我的 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>

我该如何渲染它们?

I'm working on a custom navigation menu,
I've added the following property within my MenuItem class to allow users add them controls into it.

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

I can add the tags in asp.net without any troubles but the controls within Template aren't render!!! and I'm not receive any Exceptions or Errors !

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

How can I render them ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一世旳自豪 2024-10-11 02:54:59

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

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

You have to instantiate your template within some container. See below article for how to develop template based controls:

http://msdn.microsoft.com/en-us/library/36574bf6.aspx - see example for quick start
http://msdn.microsoft.com/en-us/library/aa478964.aspx - this is more detailed article

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文