Flex - вертикальные ячейки выравнивания в сетке данных - PullRequest
2 голосов
/ 11 сентября 2009

У меня проблемы с вертикальным выравниванием текста внутри ячеек в DataGrid во Flex. Я попытался this.setStyle ("vertical-align", "middle) в itemRenderer на столбце, но, похоже, он не работает ... Я также попробовал verticalAlign.

Ответы [ 5 ]

2 голосов
/ 14 ноября 2011
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> 
1 голос
/ 10 июня 2010

Использовать свойство DataGrid verticalAlign (установлено в «middle»)

verticalAlign: вертикальное выравнивание рендерера в строке

http://www.adobe.com/livedocs/flex/2/langref/mx/controls/DataGrid.html#styleSummary

1 голос
/ 02 октября 2009

Элементы управления mx: Text и TextField напрямую не поддерживают стиль verticalAlign.

Проще всего было бы выровнять содержимое их контейнера, например, container.setStyle("verticalAlign", "bottom") или около того.

Если контейнер использует абсолютное расположение, вы можете установить один из стилей top , bottom , left , right 0, чтобы выровнять соответственно.

0 голосов
/ 01 октября 2009

Похоже, что flex не поддерживает его изначально, но я нашел хак для работы.

Заставьте клетки наследовать коробку и поместите этикетку внутри коробки. Затем вы можете установить verticalAlign = "middle" на Box.

0 голосов
/ 01 октября 2009

Попробуйте textAlign для DataGridColumn.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...