Загрузить контент в TextInput Flex?

У меня есть контент, поступающий в мое приложение с помощью запроса и коллекции ArrayCollection. Я знаю, как отобразить содержимое в DataGrid, используя свойство dataProvider, но я хотел бы использовать компоненты 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>

Есть предположения?


person Adam    schedule 17.02.2010    source источник
comment
Пожалуйста, перестаньте задавать один и тот же вопрос снова и снова. ЕСЛИ ваши более ранние вопросы необходимо перефразировать или иным образом изменить, пожалуйста, отредактируйте их. Это все равно поднимет ваш вопрос в начало списка.   -  person invertedSpear    schedule 17.02.2010
comment
Извините, я не понял, как это работает. Спасибо.   -  person Adam    schedule 17.02.2010
comment
Это круто, SO работает немного иначе, чем другие форумы, пока вы получили это сейчас. Я отредактировал свой ответ внизу, вы почти поняли.   -  person invertedSpear    schedule 17.02.2010


Ответы (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}"/> 
person invertedSpear    schedule 17.02.2010