2015-11-17 34 views
0

我有一個劍道網格如下:有沒有辦法使用委託/動作來生成Kendo Grid的列?

@(Html.Kendo().Grid<ExpenseClaimHeader>() 
     .Name("Manage-Expense-Type-grid") 

    .Columns(columns.Bound(o => o.FromDate).Title("From Date").Width(230); 
     columns.Bound(o => o.ToDate).Title("To Date").Width(230); 
    }) 
} 

我想生成取決於視圖,它是在的狀態的列我有通過在視圖中並且根據狀態的模型對此,我想添加和刪除列。

這樣做的最好方法是什麼?

我想看看我是否可以像Columns()似乎正在採取Action一樣創建委託?

Columns(System.Action<Kendo.Mvc.UI.Fluent.GridColumnFactory<T>>) 

我該如何在頁面中創建它?

回答

1

您可以將列綁定到任何財產(最好記錄ID)和顯示任何你想要使用ClientTemplate:

columns.Bound(o => o.Id).ClientTemplate("#={ ... }#"); 

如果你想在一個顯示的列有條件只是附上columns.Bound()如果聲明,所以它看起來像這樣:

@(Html.Kendo().Grid<ExpenseClaimHeader>() 
    .Name("Manage-Expense-Type-grid") 
    if({condition}) { 
     .Columns(columns.Bound(o => o.FromDate).Title("From Date").Width(230); 
    } 
) 
相關問題