flex datagrid - делает высоту сетки динамической и компонент, который ее содержит

HI,

Я хочу создать сетку данных, которая будет иметь значение динамической высоты, потому что количество строк всегда будет другим. Я также хочу передать высоту обратно компоненту, удерживающему его, чтобы он также увеличивался вместе с сеткой данных. Может ли кто-нибудь помочь мне найти лучший способ создать такую ​​динамическую сетку данных.

Спасибо


person Community    schedule 18.05.2009    source источник


Ответы (2)


Высота DataGrid контролируется его свойством rowCount. Если вы хотите, чтобы ваш DataGrid всегда был достаточно высоким, чтобы отображать все содержащиеся элементы (и, например, обернуть его внутри Scroller, чтобы справиться с ситуацией, когда DataGrid слишком велик для доступного пространства, вместо того, чтобы прокручивать сам DataGrid ), просто привяжите его к соответствующему свойству вашего источника данных:

<mx:DataGrid dataProvider="{myData}" rowCount="{myData.length}"/>
<fx:Script>
    <![CDATA[
        import mx.collections.ArrayCollection;

        protected var myData:ArrayCollection;
    ]]>
</fx:Script>
person Tim Keating    schedule 19.04.2011

Не могли бы вы уточнить? Вы хотите сказать, что не хотите, чтобы сетка данных прокручивалась? А как насчет случаев, когда количество строк превышает то, что можно увидеть на экране? - Как только вы ответите на эти вопросы, я смогу отредактировать его, чтобы он был более конкретным.

Что касается связи от вашей пользовательской реализации DataGrid до родительского объекта, вам нужно транслировать событие, указывающее, что высота должна измениться, и прикрепить к нему какое-то значение - количество строк или, возможно, новую высоту. событие.

Изучив основы трансляции событий в Flex, я понял, что они слишком сложны, и изучил структуру Swiz, что делает трансляцию и обработку событий настолько простой, насколько это возможно (среди нескольких других замечательных вещей).

person Adam Tuttle    schedule 18.05.2009
comment
Привет, Адам, я задал этот вопрос ранее, но не был авторизован. Я просто хочу, чтобы сетка данных увеличивалась / уменьшалась в зависимости от строк. Если количество строк превышает то, что можно увидеть на экране, тогда, я думаю, прокрутка - лучший вариант? Благодарность - person cdugga; 18.05.2009