Изменить поля внутри ячеек DataGrid (Flex) - PullRequest
0 голосов
/ 17 ноября 2010

Я использую следующий код для вставки объекта DataGrid в базовую панель:

<mx:DataGrid borderThickness="0"
   height="120" dataProvider="{collection}"
   rowHeight="12" fontSize="9"
   showHeaders="false" verticalGridLines="false">
     <mx:columns>
         <mx:DataGridColumn dataField="field1" headerText="Field 1"/>
         <mx:DataGridColumn dataField="field2" headerText="Field 2"/>
     </mx:columns>
</mx:DataGrid>

Моя точка зрения по настройке свойств rowHeight и fontSize заключается в том, что мне нужно, чтобы DataGrid был компактным, с небольшим пространством между каждой строкой. Но с этим кодом я получаю большую часть текста, «усеченного»: в каждой строке появляется только верхняя часть символов, а остальная часть обрезается некоторым пустым пространством. Это, я думаю, связано с полями по умолчанию внутри ячеек DataGrid, которые имеют приоритет над текстом при отображении. Есть ли способ решить эту проблему? И есть ли причина, по которой Adobe не позволила установить свойство margin? Спасибо за вашу помощь.

1 Ответ

3 голосов
/ 18 ноября 2010

Я бы посоветовал вам сделать средство визуализации пользовательских элементов на основе mx: label (если вы используете только текст), а затем задать нужные вам стили.Например.paddingTop / left / right / bottom.Вы можете прочитать о ItemRenderers здесь: Использование средства визуализации элементов с элементом управления MX DataGrid

...