Flex - вертикальные ячейки выравнивания в сетке данных
-
05-07-2019 - |
Вопрос
У меня проблемы с вертикальным выравниванием текста внутри ячеек в DataGrid во Flex. Я попытался this.setStyle ("вертикальное выравнивание", "посередине") в itemRenderer в столбце, но, похоже, это не работает ... Я также пробовал verticalAlign.
Решение 5
Похоже, что flex не поддерживает его изначально, но я нашел способ взяться за работу.
Заставьте клетки наследовать Box и поместите метку внутри Box. Затем вы можете установить verticalAlign = " middle " на коробке.
Другие советы
try use <s:HorizontalLayout verticalAlign="middle">:
<s:GridColumn headerText="Action" >
<s:itemRenderer>
<fx:Component>
<s:GridItemRenderer>
<s:layout>
<s:HorizontalLayout verticalAlign="middle" paddingLeft="5"/>
</s:layout>
<s:Button label="View" click="outerDocument.view(event)" />
<s:Button label="Unlink" click="outerDocument.unlink(event)" />
</s:GridItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:GridColumn>
Элементы управления mx: Text и TextField напрямую не поддерживают стиль verticalAlign. Р>
Проще всего было бы выровнять содержимое их контейнера, например, container.setStyle (" verticalAlign " ;, quot; bottom ")
или около того.
Если контейнер использует абсолютный макет, вы можете установить один из следующих параметров: верх , низ , слева , справа . стили до 0
, чтобы выровнять соответственно. Р>
Используйте свойство DataGrid verticalAlign (для него установлено значение "middle")
verticalAlign: вертикальное выравнивание средства визуализации в строке
Попробуйте textAlign для DataGridColumn.