2009-11-21 4 views
1

Я работаю над проектом Flex 3, и я использую пару XMLListCollection (s) для управления выпадающим списком и сетью данных.переполнение стека на XMLListCollection collectionEvent

Комбобокс прекрасно работает. XMLListCollection для этого является статическим. Пользователь выбирает элемент, а при «изменении» он запускает addItem() во вторую коллекцию. Затем в datagrid второй коллекции отображается обновленный список, и все хорошо.

Номенклатура данных, однако, доступна для редактирования. Еще одно осложнение состоит в том, что у меня есть другой обработчик событий, связанный со вторым событием изменения XMLLIstCollection, и в этом обработчике я делаю дополнительные изменения во втором списке. Это по существу вызывает бесконечный цикл (переполнение стека: D), второго списка «change» обработчик.

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

Благодарим за помощь!

ответ

0

Попытка привязать поведение к пользовательскому событию, а не к событию CHANGE.

I.e. сделайте то, что вы делаете сейчас, но отправляйте и обрабатывайте настраиваемое событие для выполнения работы.

0

Считаете ли вы использование callLater? Имеют ли те же результаты прямые манипуляции с XMLList исходного XMLListCollection? Считаете ли вы что-то вроде:

+0

Это выглядит многообещающе. Я очень хочу попробовать. благодаря – reidLinden