Вы видите дополнительную строку в сетке данных? - PullRequest
0 голосов
/ 12 августа 2011

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

Мой код, который генерирует Grid

private function createGrid(dataPrvdr:ArrayCollection, columnsValue:Array /*of Objects*/ = null):void
        {
            if (dataPrvdr && dataPrvdr.length)
            {
                includeInLayout = true;
                var grid:DataGrid = new DataGrid();

                if (columnsValue)
                {
                    var cols:Array = grid.columns;
                    for (var i:int = 0; i < columnsValue.length; i++)
                    {
                        for (var prop:String in columnsValue[i])
                        {
                            //addDataGridColumn(prop, columnsValue[i][prop], grid);
                            cols.push(DataGridColumn(columnsValue[i][prop]));
                        }
                    }

                    grid.columns = cols;
                }

                grid.dataProvider = dataPrvdr;
                grid.percentWidth = 99;
                grid.styleName = "dataGridReport";  
                grid.setStyle("headerBackgroundSkin",DataGridHeaderBlueSkin); 

                grid.sortableColumns = false;
                grid.editable = false;
                grid.variableRowHeight = true;
                grid.resizableColumns = false;

                grid.rowCount = grid.dataProvider.length;
                grid.headerHeight = 20;
                grid.rowHeight = 16;
                grid.verticalScrollPolicy = ScrollPolicy.OFF;
                addElement(grid);

                if (!grids)
                    grids = [];

                grids.push(grid);
                grid.addEventListener("multiLineLabelItemRendererHeightChanged", rendererHeightChanged, false, 0, true);
                grid.addEventListener(FlexEvent.CREATION_COMPLETE, function (event:FlexEvent):void
                {
                    grid.invalidateSize();
                }, false, 0, true);
            }
        }

Спасибо

1 Ответ

1 голос
/ 14 августа 2011

Когда вы устанавливаете свойство height сетки данных, оно переопределяет rowCount

Вы можете установить height в своем коде как:

grid.height = grid.dataProvider.length * grid.rowHeight + grid.headerHeight;

Приветствия

...