Выбор ComboBox не распознан - PullRequest
1 голос
/ 19 апреля 2011

Мой фрагмент кода выглядит следующим образом:

<s:HGroup horizontalAlign="center">
    <s:Label text="Anul : " paddingTop="5"/>
    <s:ComboBox id="yearsCb" change="yearsCb_changeHandler(event)" labelField="year"/>
</s:HGroup>

Кроме того, в моем коде после открытия всплывающего окна я обнаруживаю следующий код:

trace(yearsCb.selectedItem.year);

, выдающий печально известную ошибку:

Ошибка типа: ошибка # 1010: термин не определен и не имеет свойств.at Function / netcom.vort3x.agr_reg.client.builders.chapters.cont ....

У вас есть представление о причине этой ошибки и способах ее предотвращения?

NB. Код, который вызывает эту ошибку, является обработчиком кликов.Если перед тем, как встретить эту ошибку, измените выбор на летах, все в порядке.

РЕДАКТИРОВАТЬ:

Я забыл указать, что эта ошибка возникает, когда это выбранный элемент в моем ComboBox.Кажется, что после того, как контейнер, содержащий ComboBox, теряет фокус, он все равно не распознает дочерний объект ComboBox как имеющий выделенный элемент (эта проблема возникает только после закрытия модального всплывающего окна.).

Ответы [ 2 ]

1 голос
/ 21 апреля 2011

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

Кроме того, если ComboBox dataProvider создается динамически или уничтожается после закрытия всплывающего окна, вы захотите сохранить selectedItem с помощью ObjectUtil.copy, поскольку исходный элемент, на который ссылалась ваша переменная, был бы уничтожены.

1 голос
/ 19 апреля 2011

Вы можете предотвратить это используя:

if(yearsCb.selectedItem != null){

}
...