2012-09-20 36 views
0

問題: 我需要在telerik菜單項中呈現此Telerik樹視圖控件
菜單顯示名稱:位置。你能告訴我怎樣才能在Telerik的菜單項放置一個Telerik的樹視圖
控制(精確下面的代碼)與菜單名稱:「位置」Telerik菜單在菜單項(列表)中顯示telerik Treeview

例子: 爲了說明目的,「位置」是接壤的菜單項用虛線理解你的
。 TreeView控件是當我點擊位置時將顯示在菜單項(列表)中的控件。


位置


TreeView Control 

樹形控件顯示當我點擊菜單項位置。

這是Telerik的控制

代碼Telerik的樹形目錄的代碼:

 Html.Telerik().TreeView() 
           .Name("TreeView1") 
           .ShowCheckBox(true) 
           .BindTo(Model.SessionProvider.GetAvailableLocations, mappings => 
          { 
           mappings.For<RegionEntity>(binding => binding 
            .ItemDataBound((item, region) => 
                 { 
                  item.Text = region.RecordName; 
                  item.Value = region.ID.ToString(); 
                  //if (checkedNodes != null) 
                  //{ 
                  // var checkedNode = checkedNodes.Where(e => e.Value.Equals(employee.EmployeeID.ToString())).FirstOrDefault(); 
                  // item.Checked = checkedNode != null ? checkedNode.Checked : false; 
                  //} item.Expanded = true; 
                 }).Children(location => location.Location)); 
           mappings.For<LocationEntity>(binding => binding 
                      .ItemDataBound((item, location) => 
                           { 
                            item.Text = location.Name; 
                            item.Value = 
                             location.Number.ToString(); 
                           })); 
          }).Render(); 

代碼爲Telerik的菜單。

 Html.Telerik().Menu() 
           .OpenOnClick(false) 
           .Name("Locations") 
           .Items(parentItems=> 
              { 
               parentItems.Add().Content(); 

              } 
              ) 
           .HtmlAttributes(new { @class = "tab", style = "zIndex:9999;padding-right:3px;" }) 

           .Render(); 

我試着做下面的幾分鐘前,樹視圖控件呈現只要有列表中的其他文本項目,但它對齊到右:

<% Html.Telerik().Menu() 
      .OpenOnClick(false) 
      .Name("locations").HtmlAttributes(new { style = "background-color:transparent;min-height:150px" }) 
      .HtmlAttributes(new { @class = "tab", style = "zIndex:9999;padding-right:3px;" }) 
      .Items(items => 
      { 
      items.Add() 
       .Text("Locations") 
       .Content(() => 
       { 
       %> 
       <% Html.Telerik().TreeView() 
         .Name("TreeView1") 
         .ShowCheckBox(true) 
         .BindTo(Model.SessionProvider.GetAvailableLocations, mappings => 
        { 
         mappings.For<RegionEntity>(binding => binding 
          .ItemDataBound((item, region) => 
               { 
                item.Text = region.RecordName; 
                item.Value = region.ID.ToString(); 
                //if (checkedNodes != null) 
                //{ 
                // var checkedNode = checkedNodes.Where(e => e.Value.Equals(employee.EmployeeID.ToString())).FirstOrDefault(); 
                // item.Checked = checkedNode != null ? checkedNode.Checked : false; 
                //} item.Expanded = true; 
               }).Children(location => location.Location)); 
         mappings.For<LocationEntity>(binding => binding 
                    .ItemDataBound((item, location) => 
                         { 
                          item.Text = location.Name; 
                          item.Value = 
                           location.Number.ToString(); 
                         })); 
        }).Render();%> 
       <% 
       }); 
     }) 
     .Render(); 

但如果沒有「hello」(文本項),treeview控件不會顯示在菜單項列表中。

回答

0

不知道這是否適用於菜單,但是當我實現嵌套網格時,我使用了包含我在DetailView屬性中需要的其他控件的文本塊。

也許你可以用相同的方式使用Menu Item對象的Text或Content屬性。

Html.Telerik().Grid(model) 
    .Name("grid") 
    .ClientEvents(events => events.OnRowSelect("grid_onRowSelect")) 
    .DataKeys(d => d.Add(a => a.ID).RouteKey(("Id"))) 
    .Columns(columns => 
      { 
       columns.Bound(s => s.Name); 
       columns.Bound(s => s.Type); 
       columns.Bound(s => s.ID); 
      }) 
    .DetailView(detailView => detailView.Template(
     @<text> 
      @(Html.Telerik().Grid(item.T) 
       .Name("T_" + item.ID) 
       .Columns(columns => 
       { 
        columns.Bound(t => t.TemplateName) 
         .Template(t => Html.ActionLink(t.Name, "Index","Editor", new {id = t.ID},null)); 
        columns.Bound(t => t.ID); 
       }) 

      ) 
     </text> 
     )) 
    .Selectable() 
    .Render(); 
+0

對不起,它不適用於我Jarek。 – Ruruboy