Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   ViewStack и создание всех его вложенных элементов (http://www.flasher.ru/forum/showthread.php?t=130841)

AntonAL 06.10.2009 21:42

ViewStack и создание всех его вложенных элементов
 
Доброго дня!

Есть ViewStack, который используется следующим образом
Код:

<mx:ViewStack id="viewStack"
    width="100%" height="100%"
    >
    <mx:Canvas label="Section 1">
       
    </mx:Canvas>
   
    <mx:Canvas label="Section 2" height="100%">
        <!-- Испольуется data-binding с hostComponent -->
    </mx:Canvas>
   
    <mx:Canvas label="Section 3">
       
    </mx:Canvas>
   
    <mx:Canvas label="Section 4">
       
    </mx:Canvas>
</mx:ViewStack>

Во время выполнения приложения, когда происходит переключение на элемент с меткой "Section 2", приложение зависает.
Поковырявшись, я выяснил, что, вроде-бы проблема в наличии data-binding. Толи он как-то "обрывается", или ещё что-нибудь ...

Проблема data-binding'ом порождается тем, что компонент <mx:Canvas label="Section 2"> создаётся только тогда, когда ViewStack на него переключается.
Это я проверил обработчиком события creationComplete для данного компонента.
В документации сказано только то, что компоненты не удаляются ...
However, the old child container still exists; it is just invisible
... но про механизм создания я ничего не нашел

Теперь вопрос:
Как сказать ViewStack'у, чтобы он принудительно создавал (инициализировал) все свои элементы ??

wvxvw 06.10.2009 22:51

creationPolicy="all" ?
Только я не уверен, есть ли у него такая настройка, но скорее всего есть. А вообще, кроме всего прочего, можете:
Код AS3:

BindingManager.debugBinding("binding expression");

И тогда вы увидете в консоле, как паскудно это работает :)

AntonAL 06.10.2009 23:34

Вот спасибо за ответ! Прямо в точку!
Всё работает.


Часовой пояс GMT +4, время: 11:13.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.