DataGrid Spark带有意外的addtionnal行

时间:2018-03-15 16:34:48

标签: actionscript-3 flex datagrid flex4.6

我使用自定义GridItemRenderer创建了一个DataGrid。看here。 我在DataProvider中使用GridColumn函数添加了一个addItem然后2个项目,我指定了rowHeight,但在列的末尾有一个意外的小行。我真的不知道为什么,如果有人有想法......我也尝试修改RequestedRowCount属性,但没有成功。我也看了调试模式,列表中只有两个项目。

我的DataGrid:

        <s:DataGrid id="datagridGPTGauche"
                width="130"
                skinClass="fr.eram.skins.CustomDataGridSkin"
                textAlign="center"
                dataProvider="{dataProviderGridGPTGauche}"
                initialize="onInitializeDatagridGPTGauche(event)"
                editable="false"
                rowHeight="26"
                resizableColumns="false"
                selectionMode="none"
                sortableColumns="false" 
                requestedRowCount="2"
                > 

谢谢!

1 个答案:

答案 0 :(得分:0)

您没有在DataGrid定义中指定高度,我认为您对DataGrid如何显示其数据感到困惑。

默认情况下,如果使用rowHeight = 26,DataGrid的高度将足以显示列标题行,2行数据和第3行数据。

使用以下应用程序定义:

<?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
           xmlns:s="library://ns.adobe.com/flex/spark">
<fx:Declarations>
    <s:ArrayCollection id="myPeople">
        <fx:Object Name="Heidi Lister" Age="10" DOB="1967-06-27"/>
        <fx:Object Name="John Donald" Age="20" DOB="1980-04-21"/>
    </s:ArrayCollection>
</fx:Declarations>

<s:DataGrid id="datagridGPTGauche"
            textAlign="center"
            width="500"
            dataProvider="{myPeople}"
            editable="false"
            rowHeight="26"
            resizableColumns="false"
            selectionMode="none"
            sortableColumns="false"/>
</s:Application>

我们可以在IE中看到如下输出: Extra Line Showing in IE

如果我们增加DataGrid的高度,比如说150,我们实际上可以看到DataGrid创建&#34;空白&#34;行,即使没有数据存在,如果高度不足以显示完整行,则始终创建部分行:

DataGrid - Height = 150

您的选择是:

  • 根据数量动态设置DataGrid的高度 排除空行/空行的数据行。
  • 使高度完全合适 完整的行(没有部分行)和它显示为空的事实 行。
  • 改为使用AdvancedDataGrid。