我在kendo Grid中有一个列有数据类型TimeSpan(ASP.NET)的列。我有两个问题:
代码的剥离版本看起来像
@(Html.Kendo().Grid<SomeModel>()
.Name("Grid")
.Columns(colums =>
{
columns.Bound(c => c.StartTime).Title("Start Time"); // TimeSpan data type
})
答案 0 :(得分:0)
1您应该使用客户端模板来显示时间跨度列:
columns.Bound(p => p.StartTime).ClientTemplate("#= StartTime.Minutes #:#= StartTime.Seconds #:#= StartTime.Milliseconds #");
有关详细信息,请参阅:http://www.telerik.com/forums/working-with-timespans
2如果需要客户端过滤,您应该创建一个自定义函数作为数据源过滤器传递http://www.telerik.com/forums/how-to-define-a-custom-filter-operator 在这里,您还需要一个时间戳或自定义编辑器,以便在用户按下过滤器按钮时显示该按钮http://demos.telerik.com/kendo-ui/grid/filter-menu-customization
答案 1 :(得分:0)
在服务器上创建一个计算属性,如此...
public string ComputedTime {
set{
var time = StartTime.ToShortDateString();
// extra work here
return time;
}
}
然后用剃刀
@(Html.Kendo().Grid<SomeModel>()
.Name("Grid")
.Columns(colums =>
{
columns.Bound(c => c.ComputedTime).Title("Start Time"); // TimeSpan data type
})