h: panelGrid, который выглядит как rich: dataTabale - PullRequest
0 голосов
/ 12 мая 2011

Я столкнулся с задачей кодирования таблицы с помощью RichFaces, но эта таблица не является обычной таблицей, где у вас есть переменное число однородных строк данных. Он имеет постоянный набор строк, и каждая строка имеет разную логику для разных столбцов. Каждая строка имеет соответствующее свойство в Mbean.

Таким образом, было бы яснее встраивать эти строки непосредственно в представление вместо чрезмерного усложнения, добавляя свойства в коллекцию, добавляя некоторые флаги и вставляя их в rich:dataTable.

Было бы идеально использовать h:panelGrid, если бы это не выглядело иначе, чем rich:dataTable. Проблема заключается в том, что, хотя он содержит атрибут columnClasses, который позволяет мне создать сходство с телом rich:dataTable с использованием класса rich-table-cell CSS, он не позволяет воспроизводить ячейки заголовка. h:panelGrid просто не имеет механизма для стилизации отдельных ячеек по-разному, поэтому я не могу стилизовать верхний ряд ячеек как заголовок таблицы.

Таким образом, вопрос в том, возможно ли достичь вида и ощущения rich:dataTable с помощью h:panelGrid или я просто трачу свое время? Любые предложения очень ценятся, заранее спасибо!

1 Ответ

0 голосов
/ 12 мая 2011

Для чего-то подобного я мог бы подумать об использовании ui: repeat и просто перебирать данные как элементы tr - настраивая то, что вам нужно настроить. Или, в вашем случае, я мог бы просто создать таблицу вручную, так как это фиксированное количество строк с уникальными требованиями для каждой строки / ячейки.

h: panelGrid - отличный компонент, когда у вас однородная структура, но его трудно использовать для сложных макетов.

...