2010-02-15 2 views
0

Я создал пользовательский ItemRenderer, расширяющий UIComponent и реализующий IListItemRenderer. Этот рендерер содержит текстовый объект для отображения значения.Flex 3 пользовательский ItemRenderer и редактор Выпуск

Для редактирования я использую стандартный ItemEditor (TextInput).

Теперь, когда я хочу изменить значение, я нажимаю на ячейку, и редактор создается. Но вместо отображения значения, которое было отображено в рендерере, отображается «[object Object]».

Кто-нибудь знает, почему и может помочь мне здесь? Было бы здорово!

+1

сообщение соответствующего кода. Вы указали 'editorDataField'? – Amarghosh

+0

Проводка соответствующего кода не так проста, так как она полностью родовая и, следовательно, немного громоздка. Но я справился со своей проблемой, написав свой собственный редактор и установив свойство text для соответствующего значения в событии dataChange. – Thomas

ответ

0

Похоже, что labelField вашего объекта itemRenderer настроен на сам объект data/object, а не на свойство объекта. Убедитесь, что вы указали labelField и что для вашего оборудования TextArea#text установлено значение data.property, а не data. Это происходит потому, что

var data:Object = new Object(); 
data.label = "Hello"; 
trace(data); // "[object Object]" 
trace(data.toString()); // "[object Object]" 
trace(data.label); // "Hello"; 

Надежда, что помогает, Lance

Смежные вопросы