Kendo Grid Custom模板在新版本中不起作用(2014.3)

时间:2014-12-03 23:35:48

标签: asp.net-mvc razor kendo-ui kendo-grid

我有像这样的剑道网格设置

@(Html.Kendo().Grid(Model)
.Name("projects")
.Columns(columns =>
    {
        columns.Bound(c => c.ID).Width(90);
        columns.Bound(c => c.Name).Width(300);
        columns.Bound(c => c.Description);
        columns.Bound(c => c.ProjectCode);
        columns.Template(c => "").ClientTemplate(Html.ActionLink("Tasks", "TasksList", "Task", new { projectId = "#=ID#" }, new { @class = "k-button k-button-medium-grid" }).ToHtmlString()).Width(65);

    })
)

使用客户端模板设置(最后一列)工作正常,直到我更新到新版本的Kendo(2014.3.1119) 现在我在页面上收到错误" Uncaught TypeError:无法读取属性' context' of null"。 还有其他人遇到过这个问题吗?语法是否更改,现在设置这样的客户端模板不再有效?

谢谢!

1 个答案:

答案 0 :(得分:1)

您不应将template和clientTemplate方法用于同一列。如果您正在使用字段ID,只需将第二列绑定到此字段:

@(Html.Kendo().Grid(Model)
.Name("projects")
.Columns(columns =>
    {
        columns.Bound(c => c.ID).Width(90);
        columns.Bound(c => c.Name).Width(300);
        columns.Bound(c => c.Description);
        columns.Bound(c => c.ProjectCode);
        columns.Bound(c => c.ID).ClientTemplate(Html.ActionLink("Tasks", "TasksList", "Task", new { projectId = "#=ID#" }, new { @class = "k-button k-button-medium-grid" }).ToHtmlString()).Width(65);

    })
)

您可以在Kendo Grid FAQ中阅读有关Kendo MVC列模板的更多信息。