ASP.net 2.0 Вложенный вид сетки: как охватить родительские столбцы сетки?

Добрый день,

У меня есть родительский вид сетки с несколькими столбцами. В каждой строке я хочу иметь вложенную сетку. Однако у меня есть проблемы с правильным отображением вложенной сетки.

Если я размещу вложенный вид сетки в первых столбцах родительского вида сетки, когда я установлю для атрибута visible значение true для вложенного, конечно, все столбцы родительского вида сетки будут перемещены вправо (чтобы освободить место для дочерней сетки).

Как я могу сделать так, чтобы этот дочерний вид сетки охватывал столбцы родительского вида сетки? Если это невозможно, как я могу добиться чего-то подобного. Конечно, я не хочу размещать дочернее представление сетки в последних столбцах родительского представления сетки...

Большое спасибо!

Изменить: мы должны использовать asp.net 2.0


person Cedric Aube    schedule 16.02.2009    source источник


Ответы (1)


Это будет несколько сложно с управлением представлением сетки. Вам нужно будет обработать событие в сетке, а затем обновить атрибут HTML colspan в содержащем столбце, где вы добавляете сетку в дереве управления (не рекомендуется).

Лучшим выбором будет использование элемента управления ListView, если вы можете использовать платформу 3.5. Этот элемент управления дает вам полный контроль над разметкой. С помощью этого элемента управления вы можете легко указать диапазон столбцов родительского столбца и даже сделать его условным на основе встроенного выражения (‹%# Eval(condition) %>).

Если 3.5 Framework не вариант. Я бы попробовал решение, которое использует элемент управления повторителем, по крайней мере, для родительской таблицы, чтобы у вас был декларативный контроль над разметкой макета таблицы.

Надеюсь, это поможет.

person James    schedule 16.02.2009
comment
Итак, вы думаете, что для такого требования элемент управления веб-сервером ListView более подходит, чем элемент управления gridview? - person Sree; 29.03.2011