Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Flex компонент List отображение XML (http://www.flasher.ru/forum/showthread.php?t=140901)

Agni 10.06.2010 14:56

Flex компонент List отображение XML
 
в компоненте List нужно отобразить только нижние ветви XML-файла
при использовании labelField показывает верхний элемент, хотя у него labelField пустой
подскажите - как отобразить только нижние элементы XML

alatar 10.06.2010 23:37

Написать свой ItemRenderer

Agni 11.06.2010 14:51

через ItemRenderer можно только внешний вид изменить, нет?

Хемуль 11.06.2010 14:57

2 Agni:
Вы можете не просто передавать XML-структуру в качестве dataProvider'а компоненту напрямую, а сперва перекинуть "нижние ветви XML-файла" в какой-то буфферный обьект типа ArrayCollection, к примеру. И уже этот ArrayCollection использовать в качестве dataProvider'а.

Либо вы можете определить свой ItemRenderer, как написали выше.
В ItemRenderer'e через свойство data можно получить доступ к "нижним ветвям XML-файла".

Agni 11.06.2010 16:44

хотелось бы работать именно с этим xml
так как в нём находится информация, которая будет потом использоваться
примерно так: в list.labelField отображается один параметр узла, при нажатии на который открывается файл, название которого содержится в другом параметре узла
Код AS1/AS2:

<node id="1"  label="название" putchf = "путь к файлу">


Хемуль 11.06.2010 18:40

2 Agni:
Я, честно говоря, вас не понял.

Свойство labelField устанавливает для компонента List имя поля, которое в каждом элементе dataProvider'а задаёт подпись для соответствующей единицы списка. То есть, у вас labelField будет иметь значение "label", наверное.

На изменение индекса выбранной единицы списка делаете то, что вам нужно. К примеру, достаёте из dataProvider'а соответствующий узел. Или получаете ссылку на ItemRenderer. Можно даже написать свой класс-наследник от List и попользоваться защищённым методом mouseEventToItemRenderer, если хочется конкретно на щелчок повесить.

Но ранее вы писали про дочерние узлы, а сейчас говорите про атрибуты узлов. Не совсем понятно, что же вам конкретно нужно...

Agni 12.06.2010 09:06

нужно отображение дочерних узлов, у каждого node несколько атрибутов (если я правильно понимаю терминологию) один из атрибутов используется для отображения в list, другой будет использоваться при щелчке на нём в list

ps просто хотелось как проще, ибо чайник :)

bastrakov 16.06.2010 11:45

собственно Вы пропустили первый ответ. надо просто и коротко написать свой ItemRenderer. это быстрее и правильнее в данном случае. во


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

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