2013-12-09 43 views
0

您好我有一个高级的数据网格在flex和有时填充此图形的查询将返回一个空的单元格值。当发生这种情况时,Datagrid显示“NaN”。无论如何,如果我的查询不返回任何东西Datagrid单元格保持空白。Datagrid返回一个空值,我可以替换它吗?

感谢 MXML: '

    <mx:AdvancedDataGridColumn headerText="{Mlc.curr.get('address')}" dataField="datafield2" width="{Math.max(180,getStyle('fontSize')))}" /> 
        <mx:AdvancedDataGridColumn headerText="{Mlc.curr.get('Name')}" dataField="datafield1" width="{Math.max(180,getStyle('fontSize')))}" /> 


       </components:columns> 
       </components:RowColorDataGrid> 

'

为:

accountViewGridCanv.numRows = 1000; 
dgGridCanv.addParameter(Constants.parameter,""); 
dgGridCanv.itemID = displayItems.indexOf(dgGrid); 

基本查询运行电子表格和结果都显示在一个DataGrid,但如果电子表格中的单元格为空然后数据网格显示“NaN”

感谢 再次

+0

请分享一些代码检查NaN。这听起来像你的DataGrid的dataProvider中有一个项目;但是我们需要知道如何处理服务中的结果以及如何设置dataProvider来确定。 – JeffryHouser

+0

尝试管理列的标签功能。 – matilu

+0

谢谢我使用的代码能够从数据网格中删除NaN,但它删除该列中的每一行。例如第1行和第2行是空的,但是3包含有效的数字。在这种情况下,所有3行返回0.是否有可能只适用于行与NaN – kris

回答

0

这发生在Web服务对于一些数据类型返回null。 Flex将其转换为NaN(不是数字)。使用labelfunction检查列中的值是否为NaN。如果是,则返回相应的值display.eg-

<mx:AdvancedDataGridColumn headerText="Quantity" labelFunction="getTotalQty"/> 

现在在getTotalQty功能

private function getTotalQty(inData:Object, inCol:AdvancedDataGridColumn):Number 
    { 
     return (isNaN(inData.qty)?0:inData.qty); 
    } 
+0

如果你仔细看看我的getTotalQty函数,它返回数据的实际值,如果它不是NaN。因此,除非您没有正确实施该功能,或者该行中的实际数据已经为0,否则不应该在所有行中都为0。 –

+0

同样,将Object的inData参数的数据类型替换为数据提供者中对象的数据类型。希望这有助于.. –

+0

嗨,这definetely不起作用。该高级数据网格中的项目作为对象,但是对于该列中的所有行,这将返回0,而不管数据提供者中已返回什么。它已经完全按照它在这里执行 – kris

相关问题