将内容加载到TextInput Flex中?

时间:2010-02-17 18:55:02

标签: flex datagrid load textinput arraycollection

我已经使用查询和ArrayCollection将内容放入我的应用程序中。我知道如何使用dataProvider propriety将内容显示到DataGrid中,但我想使用TextInput组件并完全删除DataGrid。

有没有人有关于我如何做这件事的任何例子或信息?

谢谢!

感谢您的见解 - invertedSpear

我仍然遇到问题所有显示的是[对象,对象]

这是我的一些代码。

        [Bindable]
        private var acCon:ArrayCollection;

        private function reData():void //RETRIEVE DATA
        {
            var stmt:SQLStatement = new SQLStatement();
            stmt.sqlConnection = sqlConn;
            stmt.text = "SELECT * FROM person";
            stmt.execute();
            var result:SQLResult = stmt.getResult();
            acCon = new ArrayCollection(result.data);
        }

    <mx:Repeater id="repeater1" dataProvider="{acCon}"> 
    <mx:Label id="Label1" text="{repeater1.currentItem}"/>
  </mx:Repeater>

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

你的问题不明确。查询结果的格式以及您希望如何显示它们的方式会对此产生影响。

无论格式如何,您都需要做的事情。

1)确保你有一个可绑定的变量来存储你的查询结果:

[Bindable] public var myArrayCollection:ArrayCollection = new ArrayCollection();

2)将查询结果分配给此。

3)可能需要根据你的结果长度使用循环或转发器,不确定你的结果是什么样的,所以你必须弄清楚这一点。

4)将值分配给文本框。

<mx:Text text="{myArrayCollection.FieldName}">

这个答案是我对你的问题最好的猜测。如果此答案不适合您,请编辑您的问题以使其更清晰。

看看现在的代码示例,我猜你很近,你的转发器有点像你的查询结果。当前项目就像是您查询的一行。您可能只需要为其添加字段名称。所以也许吧:

<mx:Label id="Label1" text="{repeater1.currentItem.LastName}"/>