Итак, я невероятно новичок в использовании Kendo, и я возился с их сетью mvc. Я определил сетку с источником данных ajax для подкачки и сортировки на стороне сервера. Объект, который возвращает вызов ajax, имеет свойство IEnumerable. Я хотел бы использовать иерархические возможности Grid для отображения этой коллекции в виде дочерней сетки каждой строки. Я прочитал много блогов и документации Telerik по иерархическим сеткам, и каждый найденный мной пример определяет шаблон клиента для дочерней сетки, и этот шаблон клиента представляет собой сетку, которая делает отдельный вызов ajax для получения своих данных. Мне не нужно или хотите сделать отдельный вызов для дочерней сетки, так как у меня уже есть все данные, которые мне нужны в модели для родительской сетки. Есть ли способ, которым я могу выполнить то, что я пытаюсь сделать?Иерархия сетки Kendo MVC - дочерняя сетка, созданная из родительского свойства Ienumerable
0
A
ответ
0
Описанный сценарий может быть реализован следующим образом: пункты
- основных данных должны иметь поле со значением, которое является массивом из простых объектов - на основе того, что вы говорите, вы уже должны иметь это.
- Конфигурация главной сетки должна определять client detail template с дочерней сеткой, которая имеет определенные столбцы, Ajax DataSource и тип модели, но не привязана к каким-либо конкретным данным (т. Е. Нет действия
Read()
). - В
detailInit
случае основной сетки,get()
вложенный массив из элемента основных данных (e.data
), и назначить его с помощьюdata()
к примеруdataSource
в Подвесном в.
Вы можете заметить, что использование toJSON()
в приведенном выше примере. Его цель состоит в том, чтобы разбить массив вложенных элементов всех связанных с Kendo-UI файлов ObservableObject и преобразовать их обратно в обычный массив JavaScript простых объектов. Этот шаг является необязательным, но необходим, если вы хотите разделить данные деталей Grids с данными в главной сетке.
Спасибо. Это сработало хорошо. Любопытно, есть ли способ установить источник данных для дочерней сетки без этой функции javascript? Все, что я делал с сеткой до сих пор, было с их беглой api в Razor, и я задаюсь вопросом, есть ли способ решить этот sans javascript. Еще раз спасибо. – wakers01
Использование JavaScript для детализации Сетки необходимы в вашем сценарии, потому что свободный API не имеет возможности определить декларативно связь между деталями данных Grid и элементом основных данных. – dimodi
Я ценю вашу помощь. – wakers01