Шаблон редактора сетки Kendo UI Ajax В раскрывающемся списке отображается поле значения, а не текстовое поле

У меня есть иерархическая таблица Kendo UI (помощники MVC-сервера), где один из столбцов - это поиск FK, который поддерживается шаблоном редактора, который выполняет поиск значений в AJAX. Все это работает отлично. Что не работает, так это то, что в столбце отображается идентификатор (поле значения данных из раскрывающегося списка), а не текст (поле текста данных из раскрывающегося списка).

Вот Сетка

    @(Html.Kendo().Grid<ReceivingLogItemResponse>()
        .Name("grid_#=GID#")
        .Editable(e => e.Mode(GridEditMode.InCell))
        .Sortable()
        .Columns( c=>
            {
                c.Bound(i => i.GID).Hidden();
                c.Bound(i => i.SerialNumber);
                c.Bound(i => i.PartNumber);
                c.Bound(i => i.Description);
                c.Bound(i => i.Quantity);
                c.Bound(i => i.ItemLotNumber).Title("Lot");
                c.Bound(i => i.StatusId).Title("Status");
                c.Bound(i => i.CategoryId).EditorTemplateName("ClientCategory");
                c.Bound(i => i.LocationCode).Title("Location");
                c.Bound(i => i.Comments);
                c.Command(e => e.Custom("Add").Click("doItemAdd"));
            })
            .ToolBar(t => t.Save())
        .Selectable(s => s.Type(GridSelectionType.Row))
        .DataSource(dataSource => dataSource
            .WebApi()
            .Model(m => 
                {
                    m.Id(i => i.GID);
                    m.Field(i => i.GID).Editable(false);
                })
            .Batch(true)
            .ServerOperation(false)
            .Read(read => read.Url(apiWrapper.receivingLogItemUrl() + "&receivingLogId=#=GID#").Type(HttpVerbs.Get))
            .Update(u => u.Url(apiWrapper.receivingLogItemUpdateUrl()).Type(HttpVerbs.Post))
        )
        .Events(e => e.DataBound("itemDataBound"))
        .ToClientTemplate()
)

А вот и EditorTemplate (ClientCategory)

@(Html.Kendo().DropDownList()
.Name("CategoryId")
.DataTextField("Code")
.DataValueField("CID")
.AutoBind(true)
.DataSource(ds => ds.Read(a => a.Url(apiWrapper.clientCategoryUrl()).Data("getClientCategoryID()"))))

Столбец отображает поле CID до тех пор, пока вы не введете его для редактирования, когда в раскрывающемся меню появится нужное значение. Когда вы переходите в другое поле, оно возвращается к CID.

Что мне не хватает?

0 ответов

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