Предоставление значений компонентам в DataGrid

У меня есть следующее. :

mx:DataGridColumn width="125"  headerText="Time" editable="false"
mx:itemRenderer
mx:Component
            mx:HBox
                   mx:NumericStepper id ="TimeHour"    stepSize="1" minimum="0" value="0" maximum="23"/
                   mx:NumericStepper id ="TimeMinute"  stepSize="5" minimum="0" value="0"  maximum="55"/
            /mx:HBox
                    /mx:Component
   /mx:itemRenderer
/mx:DataGridColumn

Как передать значения из поставщика данных (который представляет собой массив объектов) этим отдельным числовым степперам. Похоже, что dataField не может быть упомянут в теге NumericStepper.

Помощь.

P.N: ИГНОРИРОВАТЬ начальный и конечный теги mxml. Вопрос отображается неправильно.


person user120118    schedule 11.07.2009    source источник


Ответы (2)


Если я не ошибаюсь, вы можете получить доступ к данным следующим образом: ‹mx: NumericStepper value =" {data.yourValue} "/>

person Christofer Lundstedt    schedule 11.07.2009
comment
Хорошо ... Одно, вот твой объект. Это напрямую имя параметра моего имени поставщика данных. Если я указываю имя параметра напрямую, он говорит о невозможности привязки к параметрам, несмотря на объявление привязки. - person user120118; 12.07.2009
comment
Он должен читать yourValue, я отредактировал свой исходный комментарий. data - это текущий объект в вашем массиве, поэтому yourValue является свойством этого объекта. - person Christofer Lundstedt; 12.07.2009
comment
Я пробовал вышеупомянутое. В нем написано предупреждение: невозможно выполнить привязку к свойству TimeHour в классе utils :: TimeDO. - person user120118; 12.07.2009
comment
Это довольно распространенное предупреждение, которое не должно влиять на результат кода. bugs.adobe.com/jira/browse/SDK-13814 - person Christofer Lundstedt; 12.07.2009

Предупреждения о привязке не следует никогда игнорировать. Они говорят вам, что свойство, которое вы пытаетесь использовать во время выполнения, на самом деле может быть привязано, и изменения его значения не будут распространяться, т.е. вы не увидите изменений данных в представлении. Поскольку экземпляры itemRenderers перерабатываются и, следовательно, их свойства данных меняются неоднократно, когда пользователь прокручивает список, сетку и т. Д., Вы в основном не получите то, что хотите.

Здесь вам нужно сделать пару вещей. Во-первых, убедитесь, что объекты в вашей коллекции ArrayCollection, которые вы передаете в сетку, сами [Bindable] или что, по крайней мере, свойства, которые вы хотите отобразить, [Bindable].

Во-вторых, я предполагаю, что вы хотите, чтобы экземпляры шагового двигателя также изменяли значения. Вам следует прочитать раздел документации, озаглавленный «Создание средства визуализации и редактора элементов», чтобы увидеть пример того, что вы пытаетесь сделать.

person verveguy    schedule 12.07.2009