|
|
|||||
Регистрация: Nov 2007
Сообщений: 8
|
подгрузка xml в datagrid с фильтром
Добрый день, направте на путь истинны.
Нужно сделать чтоб по нажатию на кнопку произошла подгрузка данных их XML при чем сразу с фильтром в DataGRid. данные для фильтра передает кнопка. при запуске flex приложения данные в datagrid не должны показываться. |
|
|||||
Регистрация: Nov 2007
Сообщений: 8
|
|
|
|||||
Вариант 1. Сделать выборку на сервере, отдать XML.
Вариант 2. Загрузить XML, сделать выборку. Вариант 3. Загрузить XML, распарсить в объекты, объекты запихнуть в ArrayCollection, для ArrayCollection прописать filterFunction. |
|
|||||
Регистрация: Nov 2007
Сообщений: 8
|
Цитата:
2. такой вариант у меня сейчас сначала загружается а потом по кнопке фильтруется 3. Как сделать? |
|
|||||
Регистрация: Nov 2007
Сообщений: 8
|
Цитата:
<?xml version="1.0" encoding="windows-1251" standalone="yes"?> <DATAPACKET Version="2.0"> <ROWDATA> <ROW ID="120" SECTION="7" NAME="111111" " YEAR="90-92" PRICE1="28,81" PRICE2="22,96" PRICE3="19,81"/> <ROW ID="230" SECTION="7" NAME="2222" PRICE1="11,27" PRICE2="7,61" PRICE3="6,2"/> <ROW ID="43493" SECTION="7" NAME="33333" YEAR="86-88" PRICE1="39,56" PRICE2="31,53" PRICE3="27,2"/> <ROW ID="327" SECTION="151" NAME="44444" YEAR="91-92" PRICE1="18,73" PRICE2="12,64" PRICE3="10,3"/> <ROW ID="354" SECTION="104" NAME="555555" YEAR="07-09" PRICE1="15,91" PRICE2="10,74" PRICE3="8,75"/> <ROW ID="380" SECTION="104" NAME="66666" YEAR="90-92" PRICE1="4,31" PRICE2="2,91" PRICE3="2,37"/> </ROWDATA> </DATAPACKET> |
|
|||||
Проходите по XML в цикле создаете объекты, например такие:
package { public class RowVO //value object { public var id:int; public var section:int; public var name:String; public var year:String; public var prices:/*Number*/Array; } } Пишите функцию: private var _currentSection:int = -1; //параметр по которому будем фильтровать private function filterFunction(item:Object):Boolean { /*отображаем все, если секция не задана или отображаем объект, если его секция совпадает с необходимой*/ if (_currentSection == -1 || _currentSection == item['section']) { return true; { return false; } И вызываете метод коллекции refresh(). Если секция меняется, то меняете _currentSection и вызываете refresh(). |
Часовой пояс GMT +4, время: 13:38. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|