flex:向下钻取到dataprovider数组

时间:2011-01-06 15:25:02

标签: flex actionscript-3 mxml

我有一个SQL语句,我想从SQL数据库中读取名称字段。代码:

public function getAllGiberish():void {
  var stmt:SQLStatement = new SQLStatement();
  stmt.sqlConnection = sqlConnection;
  stmt.text = "SELECT name FROM test3";
  stmt.execute();
  l.dataProvider = new ArrayCollection(stmt.getResult().data);
}

这将从数据库中提取数据。但是,在列表项中,它将所有内容显示为[object Object]。调试后,我可以看到数据提供者显示:

data[0] > name
data[1] > name
data[2] > name

我想要的信息是每个数据对象中的名称。

如何轻松访问此内容?这是一个我一直遇到的问题,我想一劳永逸地解决这个问题!

干杯

3 个答案:

答案 0 :(得分:1)

您想在列表中设置labelField属性(在此假设Flex 3)。默认情况下,它正在寻找一个名为“label”而非“name”的字段。另请查看列表对象的dataField和labelFunction属性以获取更高级的选项。

答案 1 :(得分:0)

答案 2 :(得分:0)

您可以编写标签功能:

private function list_labelFunction(item:Object):String {
            return item.columnName;
        }

并确保您的列表设置了标签功能:

<s:List id="myList" labelFunction="list_labelFunction"/>

无论如何,我是怎么做到的!