У меня установлена сетка, когда я вытягиваю одно из полей с помощью встроенного выпадающего списка.
Я могу получить нужные значения из элемента данных раскрывающегося списка, а также установить значения в строке редактирования сетки, используя раскрывающийся список.
Следующий код работает нормально, если A, B, C и D доступны для редактирования ... НО ... эти значения не должны редактироваться. Значения в этих ячейках должны строго соответствовать значениям выпадающего списка.
function ddl_OnSelect(e)
{
var DDLdataItem = this.dataItem(e.item);
var A = DDLdataItem.A;
var B = DDLdataItem.B;
var C = DDLdataItem.C;
var D = DDLdataItem.D;
var grid = $('#grd').data('kendoGrid');
var editRow = grid.dataItem("tr.k-grid-edit-row");
editRow.set("A", DDLdataItem.A);
editRow.set("B", DDLdataItem.B);
editRow.set("C", DDLdataItem.C);
editRow.set("D", DDLdataItem.D);
}
Мне кажется, что я должен иметь возможность отображать значения в столбце шаблона, но я не нахожу никакой хорошей документации по column.template, и когда я делаю что-то подобное, он просто дает мне пустой столбец.
columns.Template(
@<text>
<input type="text" name="A" value="@item.A" readonly />
</text>
).Title("A");
UPDATE
Хорошо .... так что я сделал, чтобы "исправить" проблему, было ...
Сначала я создал новый шаблонный шаблон ReadOnlyCurrency и поместил его в общие шаблоны Editor.
Затем для каждого из 3 столбцов валюты, к которым это относится, я добавил свойство имени шаблона редактора.
.EditorTemplateName("ReadOnlyCurrency")
Затем я скопировал содержимое шаблона редактора валют и вставил его в шаблон readonlyvururcy
Я выключил счетчики, сделал его доступным только для чтения и включил false.
@model decimal?
@(Html.Kendo().CurrencyTextBoxFor(m => m)
.HtmlAttributes(new { style = "width:100%;", @readonly = "readonly" })
.Enable(false)
.Min(0)
.Spinners(false)
)
1027 *
Этого достаточно для того, что я пытаюсь сделать, но я не собираюсь отмечать это как ответ.
Я бы предпочел иметь метку, отформатированную в валюте ... но у меня проблемы с тем, как шаблон редактора проходит в модели.