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.

Другие вопросы по тегам