Flex:数字的 DataGrid 列格式 [英] Flex: DataGrid column formatting of numbers

查看:32
本文介绍了Flex:数字的 DataGrid 列格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试格式化 DataGrid 列中的一些数字.当我运行它时,我在下面的简化测试程序中遇到错误.到目前为止,我看到的所有示例的列数据都是字符串.有没有办法使用数字来做到这一点?如何修改下面的代码以格式化 checking 值?

I'm trying to format some numbers in a column of a DataGrid. I'm getting an error in my simplified test program below when I run it. All the examples I've seen so far have column data that are strings. Is there a way to do it using numbers? How to modify the code below to format the checking values?

<?xml version="1.0" encoding="utf-8"?>
<mx:Application 
    xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    xmlns:mx="library://ns.adobe.com/flex/mx">

<fx:Script>
    <![CDATA[       
        [Bindable]
        public var checking:Array = new Array(1000000.2222, 0, 1000);

        private function myLabelFunction(item:Array, column:DataGridColumn):String {    
                var result:String;
                result = myFormatter.format(item);
                return result;
        }
    ]]>
</fx:Script>

<fx:Declarations>
    <s:NumberFormatter id="myFormatter"
                       fractionalDigits="2" 
                       decimalSeparator="."
                       groupingSeparator=","
                       useGrouping="true"
                       negativeNumberFormat="0"
                       />
</fx:Declarations>

<mx:DataGrid id="dg1" dataProvider="{checking}" >

    <mx:columns>
        <mx:DataGridColumn dataField="checking" headerText="Checking" 
                           labelFunction="myLabelFunction" />
    </mx:columns>

</mx:DataGrid>

</mx:Application>

推荐答案

  1. 更改过滤器函数签名(item 应该是Object)

私有函数 myLabelFunction(item:Object, column:DataGridColumn):String

从列中删除 dataField="checking".

这篇关于Flex:数字的 DataGrid 列格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆