#apache-flex #datagrid
#apache-flex #datagrid
Вопрос:
Всякий раз, когда вы изменяете размер datagrid вручную (не с помощью кода), последний столбец, похоже, сохраняет большую часть ширины. Что еще хуже, всякий раз, когда вы расширяете его и сжимаете в значительной степени, другие столбцы могут размазываться. Вот прекрасный пример:
Идеальным решением было бы распределить ширину равномерно или пропорционально длине текста. Кроме того, если бы избежать покрытия текста, когда в этом нет необходимости. Теперь установка ширины 0.5
в приведенном выше примере, похоже, устраняет проблему, но не предотвращает ее полностью.
Что я также хотел бы знать, есть ли какие-либо хорошо отшлифованные пользовательские datagrid, которые решают эту проблему. Пытаясь найти решение, я подозреваю, что единственные доступные решения являются более специальными.
Ответ №1:
Я знаю два способа избежать этой проблемы.
1) Используйте List
со специальным средством визуализации элементов, которое имитирует столбцы (скажем HBox
, разделенные правилами), и заголовок, который повторяет макет средства визуализации элементов. Это не очень элегантные решения, но изменение размера вполне предсказуемо. Также вы можете легко добавить функцию сортировки (добавив кнопки в заголовок), но я не уверен, можно ли здесь реализовать изменение размера столбца.
2) Используйте spark s:DataGrid
из SDK 4.x. У него нет таких проблем с изменением размера AFAIK.