![]() |
Repeater вложенный в repeater
Прошу помощи сообщества с отображением контента во Flex 3
Вот такой интерфейс простенького таск менеджера с разбивкой на проэкты. Проэкты выделены в отдельные панельки. Код панелек с задачами: Код:
<mx:Repeater id="projectViews"> |
У меня есть вопрос и сомнение
Вопрос - почему вы не используете *List? Сомневаюсь, что такая вложенность это хорошо. |
Либо я думаю не о том List, но мне кажется List control мне не подходит, мне нужно чтобы каждая задача в списке имела чекбокс, два лебла и кнопку. Я новичек во флекс, может не догоняю чего.
На счет сомнений — я и сам не уверен в такой вложенности, но если будут другие предложения… |
Почему не генерить все при помощи AS?
А вообще все работает, только у репитера должен быть dataProvider (у обоих). Код AS3:
http://examples.adobe.com/flex3/comp.../explorer.html если что смотри тут примеры, (visual components ->Repeater control -> repeater) |
Дата провайдеры я задаю во внешнем AS файле -
Код:
projectViews.dataProvider = e.tasksContent;Этот код вызывается при получении xml. Я уже писал что если вынести вложенный репитер за пределы внешнего — все работает, то есть таски рисуются под проэктами, а внутри — нет. Айдишники внутри репитера для красоты больше ). Нужные данные я заполняю вызывая соответствующие методы из своего класса по creationComplete, только из примера выкинул дабы не захламлять. |
Скорее всего проблема в том, что когда первый репитер получил данные, то у второго репитера уже нет того самого id=taskViews.
Это по поводу того, что я писал нет смысла использовать id внутри репитера. Для первого репитера можешь оставить, а для второго заведи массив и назнач его сразу, чтобы внутренний репитер знал откуда брать данные (ну или хмл, если у тебя из нее данные берутся) и уже при получении присваивай Код AS3:
|
Хорошо, тогда впопрос, возможно немного нубский.
dataProvider для проектов я назначаю по событию во внешнем AS, событие — загрузка сгенерированного xml. Хотелось бы обьявить датапровайдер для задач в том же обработчике, как это сделать? Я попробовал обьявить в нем переменную — массив в который загрузил треды задач, но mxml код при этом его не видит. Внешний AS с обработчиком и прочим подключается по <mx:Script source="myASfile.as"/> |
Обяви в своем классе паблик массив, и в приложении задай датапровайдер этот же массив.
|
| Часовой пояс GMT +4, время: 12:23. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.