【问题标题】:How to Set the SiteMapNode Title Dynamically from Master Page ? ASP.NET如何从母版页动态设置 SiteMapNode 标题? ASP.NET
【发布时间】:2012-08-16 16:32:35
【问题描述】:

在我的 Web.sitemap 中,我有以下内容:

<siteMapNode url="~/Groups/ViewGroups.aspx" urlRoute="groups/{PostId}/{PostTitle}" />
</siteMapNode>

在我的 MasterPage 中,我实现了 ItemDataBound 事件来尝试设置动态实现母版页的每个页面的标题,但由于某种原因没有设置标题。

protected void SiteMapPath1_ItemDataBound(object sender, SiteMapNodeItemEventArgs e)
{
    string CurrentNodeTitle = GetTitleFromDatabase();

    if (e.Item.ItemType == SiteMapNodeItemType.Current) {
         e.Item.SiteMapNode.Title = CurrentNodeTitle;
    }
}

如果我在 中设置标题,那么它可以完美运行,但是当我使用 e.Item.SiteMapNode.Title = CurrentNodeTitle; 设置它时,标题不会被设置.

【问题讨论】:

  • 试试ItemCreated 事件。 ItemDataBound 不打算在您的代码中使用。
  • @Amiram Korach 感谢您的建议,我已经实现了 ItemCreated 事件,但它仍然没有工作,标题没有被应用。
  • 这是动态设置站点地图标题的正确方法吗?

标签: asp.net master-pages sitemap sitemapnode


【解决方案1】:

在 Web.sitemap 中,您必须在 Title 中添加类似 % vble % 的内容,如果此值是文字,则不会应用任何更改

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-04
    • 1970-01-01
    • 1970-01-01
    • 2014-06-13
    • 1970-01-01
    相关资源
    最近更新 更多