Как установить высоту строки Dojox Datagrid в одну строку
Я пытаюсь зафиксировать высоту Dojox 1.3 Datagrid в одну строку (например, в Excel). Текущая функциональность заключается в автоматическом увеличении высоты строки, когда доступно больше данных, чем уместится в одну строку.
Есть ли простой способ сделать это? Похоже, что он должен быть встроен в функциональность для сетки данных, учитывая, что это поведение по умолчанию для электронных таблиц.
Спасибо за помощь
3 ответа
Нашел взломать!
используйте это как средство форматирования столбца:
function(obj){
return "<div style='height:15px;text-overflow:ellipsis'>"+obj+"</div>"
}
Это просто взлом, и я вижу некоторые проблемы с селектором строк. Но в любом случае, надеюсь, это поможет вам, ребята.
Я думаю, что вы можете.
Вот что я экспериментировал с:
В классе.dojoxGridCellContent добавьте:
бело-пространство: Nowrap; переполнение: скрытый;
Для моих функций "Squeeze/Expand" я использую небольшую функцию для динамического изменения атрибута класса, а затем перекрашиваю сетку.
Я твердо верю в необходимость урезать строки (как в Excel, так и в HTML) до высоты 1 "строки", чтобы облегчить вертикальное визуальное сканирование (при необходимости обрезать содержимое ячейки), а затем иметь возможность разверните их снова, чтобы увидеть все содержимое ячейки в каждой конкретной строке.
Изменение размера столбца вручную, чтобы он был достаточно широким, чтобы вместить весь возможный текст в любой данной ячейке, является ужасным решением, если в любой данной ячейке имеется переменное количество текста. Для продуктивных приложений не функциональный пробел является врагом.
Хотелось бы, чтобы в Dojo был встроен способ сделать эту полезную вещь (также решая многолетнюю кросс-браузерную задачу условных эллипсов).
Вы не можете установить высоту, но вы можете настроить ширину. Если у вас есть четкое представление о том, какой ширины обычно должна быть ваша ячейка, чтобы уместить строку в одну строку, вы можете установить ее в элементе
<table //dojo grid properties>
<thead>
<tr>
<th width="90px" field="fieldName" ...>
Field Name
</th>
...
</tr>
</thead>
</table>
Надеюсь это поможет.
2009-08-14 13:07