Назначение коллекции arraycollection в компоненте в качестве поставщика данных для datagrid в основном приложении

Привет, у меня простой (я думаю) вопрос. У меня есть следующий пользовательский компонент в Flex 4.6 (частичный код).

<fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
        <s:ArrayCollection id="acItems"/>
        <s:ArrayCollection id="acOrder" source="{orderItems.source}"/>
    </fx:Declarations>
    <fx:Script>     
        <![CDATA[
            [Bindable]
            public var orderItems:ArrayCollection = new ArrayCollection();

            private function addToOrder():void
            {
                orderItems.addItem(itemGrid.selectedItem);
            }
        ]]>
    </fx:Script>

    <mx:AdvancedDataGrid id="itemGrid" dataProvider="{acItems}" width="100%" height="100%" borderVisible="false" click="addToOrder()">
        <mx:columns>
            <mx:AdvancedDataGridColumn width="200" dataField="omschrijving" headerText="omschrijving"/>
            <mx:AdvancedDataGridColumn dataField="prijs" headerText="prijs"/>
        </mx:columns>
    </mx:AdvancedDataGrid>  

Поэтому всякий раз, когда я нажимаю на элемент, он добавляется в коллекцию массивов.

Теперь я вызываю этот компонент в своем основном приложении. Он заполняется данными из базы данных. Все работает нормально, поэтому я не думаю, что код необходим для решения моей проблемы :)

<components:Items acItems="{acItems}"/>

И рядом с этим компонентом у меня есть еще одна сетка данных в моем основном приложении. Он должен быть заполнен коллекцией массивов, которую я создал в пользовательском компоненте. Но я не имею ни малейшего представления о том, как назначить эту коллекцию массивов в качестве поставщика данных для сетки данных. У кого-нибудь есть идея?


person ZackWhite    schedule 31.12.2012    source источник


Ответы (1)


Самый простой способ - вставить одну коллекцию ArrayCollection в оба представления. Если вы используете фреймворк MVC, такой как RobotLegs, эти принципы проектирования будут реализованы фреймворком (если вы не используете его неправильно).

На самом деле я бы рекомендовал изучить MVC и не полагаться только на упрощенные образцы от Adobe.

person Florian Salihovic    schedule 01.01.2013