0
我正在使用Array集合生成一個datagrid。當生成datagrid時,會在網格結尾處創建一些額外的行。我如何刪除多餘的行或阻止它們生成。面對數據網格中的額外行嗎?
我的代碼生成網格
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);
}
}
感謝
嗨謝謝,我用Rowheight線檢查此解決方案,但沒有它,但成功 - 錯誤仍然相同。任何其他方式來解決它。謝謝 –
在你的例子中,你可以設置它如下: 'grid.height = dataPrvdr.length * 16 + 20;' –
是的,實際上我與rowHeight屬性混淆,所以我專門設置它,並且動態計數。感謝你的解決方案讓我的生活變得簡單 –