2015-01-13 25 views
2

雖然使用INavigationProvider填充管理菜單,但我們可以添加項目並使用LocalNav()方法。這樣我們就在內容區域有導航標籤。烏節中的管理員本地導航標籤CMS

在我的情況我有我的自定義模塊,其中列出了具體ContentType的內容項目。然後我可以點擊選中的內容項並導航到子文件。 在這裏,我需要顯示3個選項卡與子文檔列表。

問題是:如何動態創建這個標籤?

果園呈現使用Layout.LocalNavigation區,其具有的MenuItemList「標明LocalNav = true s此標籤。

如何將我自己的標籤添加到此列表中? (標籤href取決於父項ID,像/admin/MyModule/Index/123/questions其中123是父文檔的ID

的感謝!

回答

1

我無法給出關於從路線獲取產品數據的具體建議,但就動態選項卡而言,最近出現了類似的情況,下面是我如何做到的;基本上,我需要爲網站上的每個已安裝的文化單獨製作一個標籤。

public void GetNavigation(NavigationBuilder builder) 
{ 
var cultures = this.CultureManager.ListCultures().ToList(); 
builder 
.Add(
T("Settings"), 
menu => menu.Add(
    T("Culture Customizations"), 
    "10.0", 
    subMenu => 
    { 
     subMenu.LinkToFirstChild(true); 
     for (int cultureCounter = 0; cultureCounter < cultures.Count; cultureCounter++) 
     { 
      var cultureString = cultures[cultureCounter]; 
      var cultureInfo = CultureInfo.GetCultureInfo(cultureString); 
      subMenu.Add(T(cultureInfo.EnglishName), cultureCounter.ToString(CultureInfo.InvariantCulture), item => item.Action("Index", "Admin", new {area = "ProjectName.YourModule", cultureCode = cultureString}).LocalNav(true)); 
     } 
    })); 

}