Расширенная таблица данных Flex 4.5 с динамическими и сгруппированными столбцами - PullRequest
0 голосов
/ 28 декабря 2011

Я пытаюсь создать расширенную сетку данных с сгруппированными столбцами.Проблема в том, что я не знаю, сколько столбцов должно иметь ADG.Каждая группа столбцов содержит два столбца, но количество групп задается в поле выбора.

Этот метод создает столбцы (по некоторым данным, которые называются выбором класса):

public function createAdvancesDataGrid():void
        {
            var adg:AdvancedDataGrid = this.currentStateADG;

            var columns:ArrayCollection = new ArrayCollection();
            for each (var currentClass:ClassAssetMetaData in columnsClasses)
            {
                var columnGroup:AdvancedDataGridColumnGroup = new AdvancedDataGridColumnGroup();
                columnGroup.headerText = assetsLabelFunction(currentClass);
                columnGroup.childrenDragEnabled = false;
                columnGroup.sortable = false;
                columnGroup.draggable = false;
                columnGroup.editable = false;

                var portionColumn:AdvancedDataGridColumn = new AdvancedDataGridColumn();
                portionColumn.headerText="portion";
                portionColumn.dataField = "portion"
                portionColumn.width=80;

                var marketValueColumn:AdvancedDataGridColumn = new AdvancedDataGridColumn();
                marketValueColumn.headerText="marketValue";
                marketValueColumn.dataField = "marketValue"     
                marketValueColumn.width=80;


                columnGroup.children = [portionColumn, marketValueColumn];
                columns.addItem(columnGroup);
            }

            adg.groupedColumns = columns.toArray();
            adg.validateNow();      

        }

Myпоставщик данных - это массив. Коллекция

public class AssetMarketValue
{
    public var portion:Number;

    public var marketValue:Number;

    public var order:int;

    public var asset:BaseAssetMetaData;}

Я хочу, чтобы сетка данных отображала каждый сгруппированный столбец с его AsssetMarketValue от поставщика данных, но каким-то образом сетка данных отображает одно и то же marketValue для всех сгруппированных столбцовстрока.

После некоторых исследований я обнаружил, что в группе также должен быть dataField, но, поскольку я динамически генерирую столбцы с помощью ActionScript, я не знаю имен поля данных.

...