【发布时间】:2014-12-02 20:45:30
【问题描述】:
我有一个 Kendo UI MVC Helper Grid,它的模板列存在问题。我的问题是我不想使用服务器端调用进行过滤或排序。当我禁用服务器端数据源时,我的模板不会为“名称”列呈现。这是我的代码:
@(Html.Kendo().Grid(Model.Contacts)
.Name("contactGrid")
.Columns(c =>
{
c.Bound(p => p.Name).Title("Contact Name").Template(@<text><a href="/contact-details/@item.Id" target="_blank">@item.Name</a></text>);
c.Bound(p => p.Id).Title("Unique ID");
})
.Sortable(s => s.SortMode(GridSortMode.SingleColumn).AllowUnsort(true))
.Scrollable(s => s.Height(430))
.Filterable(f => f.Extra(false).Operators(o => o.ForString(s => s.Contains("Contains"))))
.DataSource(d => d.Ajax().ServerOperation(false))
)
如果我像这样注释掉数据源:
//.DataSource(d => d.Ajax().ServerOperation(false))
然后模板在“名称”列上正常工作,但页面执行回发,这对于网格来说是多余的。如果我不加注释,那么“名称”列中的单元格都呈现为纯文本(不存在锚标记),但我有客户端排序和过滤。
我需要更改什么以允许“名称”列上的模板并进行客户端排序和过滤?
【问题讨论】:
标签: c# asp.net-mvc kendo-ui kendo-grid kendo-asp.net-mvc