AdvancedDatagrid GroupingCollection в AS3 - PullRequest
       32

AdvancedDatagrid GroupingCollection в AS3

0 голосов
/ 23 января 2011

Мое AIR-приложение основано на Mate. Я получаю данные из SQLite и помещаю дату в коллекцию ArrayCollection.

В классе моей AdvancedDataGrid я создаю GroupingCollection через mxml. Все работает отлично. Я предпочитаю собирать GroupingCollection в Actionscript. Но я не могу ничего найти, как это зашифровать. В Adobe Help, они создают GroupingCollection в MXML.

Цель состоит в том, чтобы создать экземпляр gc в модели mate для другого класса. Это будет диаграмма, а dataProvider должен быть gc.

Другая идея состоит в том, чтобы создать группу groupingCollection и поместить ее в модель посредством двустороннего связывания. Но я не уверен, сработает ли это.

Есть ли у вас подсказка для меня?

Спасибо Frank

1 Ответ

2 голосов
/ 01 февраля 2011

Это работает так.Что за драка.

        private function onCreationComplete () :void
        {
            adg.dataProvider = createDataProvider();
        }

        private function createDataProvider () :GroupingCollection2
        {
            var tmp:GroupingCollection2 = new GroupingCollection2();
            tmp.source = dpArrColl;
            tmp.grouping = adgGrouping();
            tmp.refresh(false);
            return tmp;
        }

        private function adgGrouping () : Grouping
        {
            var tmp:Grouping = new Grouping();
            tmp.fields = [groupingFieldArray()];
            return tmp;
        }

        private function groupingFieldArray () :GroupingField
        {
            var tmp:GroupingField = new GroupingField();
            tmp.name = "groupName1";
            tmp.summaries = [adgSummaries()];
            return tmp;
        }

        private function adgSummaries () : SummaryRow
        {
            var tmp:SummaryRow = new SummaryRow();
            tmp.summaryPlacement = "group";
            tmp.fields = [adgSummaryFiled1(), adgSummaryField2()];
            return tmp;
        }

        private function adgSummaryFiled1 () :SummaryField2
        {
            var tmp:SummaryField2 = new SummaryField2();
            tmp.dataField = "Sumfiel1";
            tmp.summaryOperation = "SUM";
            return tmp;
        }

        private function adgSummaryField2 () : SummaryField2
        {
            var tmp:SummaryField2 = new SummaryField2();
            tmp.dataField = "Sumfield2";
            tmp.summaryOperation = "COUNT";
            return tmp;
        }

Надеюсь, кто-нибудь когда-нибудь поможет этому.

BR Фрэнк

...