2010-06-03 4 views
1

Мне предоставлен макет, который я не знаю, можно закодировать в ASP.NET, не будучи настоящим мастером html и javascript.Показать ASP.NET GridView внутри выбранной строки в другом GridView

Я хочу, чтобы GridView показывал, что при выборе строки выбранная строка расширяется и под выбранной строкой отображается панель дополнительной информации, которая также будет содержать еще один небольшой GridView. Идея в том, что все это будет в строгом соответствии. Поэтому, если пользователь выбрал строку 4, тогда дополнительная информация появится ниже строки 4, а затем после дополнительной информации родительский GridView продолжит строку 5.

В конечном счете, я хотел бы создать многопозиционный тип настройки , но сначала мне нужно выяснить, возможно ли это. Кроме того, решение должно быть 508 Compliant

Единственное решение, которое я рассматривал, использовало только одну колонку. Затем я поместил все свои поля в ItemTemplate и содержимое моей панели деталей в EditItemTemplate и вместо того, чтобы выбирать строку, установите ее в режим редактирования. Проблема с этим решением заключается в том, что я теряю функциональность нескольких столбцов, если я бросаю все в один огромный ItemTemplate.

Любые предложения и идеи приветствуются.

ответ

1

Что вы описываете, лучше всего выполнить с помощью элемента управления ListView. Для настройки требуется немного больше шаблонов, чем представление сетки, но у вас есть намного больше контроля над ним, и вы можете эмулировать внешний вид GridView. Вы установили бы, чтобы ваш шаблон Selected Item содержал другой ListView (или GridView), привязанный к вашим подробным данным.

+0

Но будет ли это решение по-прежнему обеспечивать динамический размер столбца, который предоставляет GridView? Один столбец моих данных - это адресная информация. Некоторые адреса огромны, некоторые небольшие. То, как GridView динамически определяет размеры столбцов, очень полезно. –

+0

Если вы используете строки таблицы для шаблона элемента, вы получите тот же результат. – alejandrobog

+0

. Сетью gridview является просто создание таблицы, из которой происходит автоматическое определение размера столбца (если вы не переопределяете его самостоятельно). Если данные являются табличными, используйте таблицы в своих шаблонах. – Barry

1

Я сделал это с помощью GridView внутри ListView и используя ajaxcontroltoolkit collapsible panel

Ваш родительский список будет ListView, который будет иметь 2 строки таблицы для каждого элемента, на первой строке ваш родительский столбец, на второй ряд использовать colspan и добавить gridview, завернутый на складной панели

Смежные вопросы