使用Kendo Mvc Grid作为Mvc EditorTemplate

时间:2017-12-10 03:39:50

标签: kendo-ui kendo-grid mvc-editor-templates

我正在尝试使用Kendo Mvc Grid作为Mvc EditorTemplate。

ViewModel.cs

public class ViewModel{
  ...
  public List<EditorViewModel> Lines{get;set;}
  ...
}

EditorViewModel.cs

public class EditorViewModel{
   ...
   public string Text{get;set;}
   ...
}

View.cshtml

@model ViewModel
<form>
   ...
   @Html.EditorFor(m => m.Lines, "Grid")
   ...
</form>

EditorTemplates / Grid.cshtml

@Model IEnumerable<EditorViewModel>
@Html.Kendo().Grid<EditorViewModel>().BindTo(Model)
...
.Columns(col => {
  col.Bound(m => m.Text)**.EditorTemplate("Text.Grid");**
})
.Editable(g => g.Enabled(true).Mode(GridEditMode.InCell))
...
)

网格显示正确,可编辑为例外,但当我离开编辑模式时,会抛出javascript错误。

Uncaught TypeError: Cannot read property 'Text' of undefined
at eval (eval at getter (kendo.all.js:2041), <anonymous>:3:21)
at init.set (kendo.all.js:8149)
at init.change (kendo.all.js:8930)
at init.f (jquery-2.2.4.min.js:2)
at init.trigger (kendo.all.js:124)
at init.window.kendo.window.kendo.devtools.kendo.ui.Widget.trigger (<anonymous>:587:33)
at init._change (kendo.all.js:35754)
at init._blur (kendo.all.js:35719)
at init._focusout (kendo.all.js:35770)
at HTMLInputElement.f (jquery-2.2.4.min.js:2)

是否可以将KendoGrid用作Mvc EditorTemplate? 如果有可能我做错了什么?

更新:

如果找到解决此问题的方法。 所做的更改使用粗体文本。 在Text.Grid.cshtml中添加此行

@{
  ViewData.TemplateInfo.HtmlPrefix = string.Empty;
}

这样就删除了属性前缀

0 个答案:

没有答案