2013-12-23 49 views
1

我正在使用Kendo網格,並試圖實現層次結構,如demo portion of their web site上的示例。Kendo UI網格層次結構無效的模板

這一切除了.Name("WorkOrderGrid_#=Event.EventReliabilityKey#")行工作。如果我只給它一個像.Name("WorkOrderGrid")這樣的常規字符串,那麼它就可以正常工作,除非它必須是唯一的名稱,否則所有結果都顯示在第一個層次結構下拉區域中。因爲你可以看到更多,所以.Name()必須是奇怪的,我在我的.Read()行中成功地使用了模板語法。

這裏是我的模板:

<script type="text/x-kendo-template" id="currentWorkTemplateGrid"> 
    @(Html.Kendo().Grid<Reliability.BusinessLogic.Models.FloorTourDownEventsModel>() 
     .Name("WorkOrderGrid_#=Event.EventReliabilityKey#") 
     .Columns(columns => 
     { 
      columns.Bound(c => c.WorkOrderID).Title("Work Order"); 
      columns.Bound(c => c.WorkOrderDesc).Title("Description"); 
      columns.Bound(c => c.VarianceDur).Title("Variance"); 
      columns.Bound(c => c.PlanDur).Title("PlanDur"); 
      columns.Bound(c => c.DO_ShopComment).Title("Comments"); 
     }) 
     .DataSource(dataSource => dataSource 
      .Ajax() 
      .Read(read => read.Action("GetCurrentWorkOrders", "FloorTour", new { eventKey = "#=Event.EventReliabilityKey#", eventStart = DateTime.Today, eventEnd = DateTime.Today })) 
     ) 
     .Sortable() 
     .ToClientTemplate() 
    ) 
</script> 

感謝你的幫助,

亞倫

回答

0

我想通了這個問題。我不知道這是爲什麼,但事實證明name()字符串需要是.Name("WorkOrderGrid_#=EventReliabilityKey#")。它不能有.來遍歷對象。一旦我將FloorTourDownEventsModel模型更改爲第一級的EventReliabilityKey,網格模板就起作用了。 :/

+0

我正在使用Kendo Grid的層次結構演示,並且堅持在子網格內創建一個模板按鈕,我想從父網格中讀取值。你能幫我嗎?我的問題列出[這裏](http://stackoverflow.com/questions/27417604/kendo-grid-hierarchy-passing-id-from-master-grid) – Sarah