Kendoui MVC EditorTemplateName не работает в режиме редактирования PopUp
Я хочу использовать EditorTemplateName для внешнего ключа Column в сетке KendoUi.
когда режим редактирования сетки - InLine, все в порядке и мой шаблон загружен. но при смене режима на Popup не загружается шаблон. как это можно исправить?
@(Html.Kendo().Grid<Product>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(p => p.ProductId).Visible(false);
columns.Bound(p => p.Title);
columns.ForeignKey(p => p.CategoryId, new SelectList(ViewBag.CategoryySelectList, "Value", "Text"))
.EditorTemplateName("MyTemplate");
columns.Command(cmd => cmd.Edit());
})
.Editable(edit => edit
.Mode(GridEditMode.PopUp)
)
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(15)
.Events(events => events.Error("error_handler"))
.Model(model =>
{
model.Id(p => p.ProductId);
})
.Read(read => read.Action("FillGrid", "Products"))
.Update(update => update.Action("Edit", "Products"))
.Destroy(destroy => destroy.Action("Delete", "Products"))
)
)
1 ответ
Решение
Рендеринг действительно не обрабатывается одинаково при использовании InLine
/InCell
против Popup
, В последнем случае шаблон редактора, который на самом деле будет использоваться, выводится из названия, поэтому вы должны поставить Product.cshtml
шаблон в ~Views/Shared/EditorTemplates
,
В этой статье подробно это рассматривается: http://docs.kendoui.com/getting-started/using-kendo-with/aspnet-mvc/helpers/grid/editor-templates.