Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.10.2007, 22:12
quazare вне форума Посмотреть профиль Отправить личное сообщение для quazare Найти все сообщения от quazare
  № 1  
Ответить с цитированием
quazare
 
Аватар для quazare

Регистрация: Jul 2004
Сообщений: 430
Question загрузка в dataProvider

Народ, подскажите как правильно работать с dataProvider в <mx:List>

проблема такая:

1.я создал глобальный массив myData
2.записал туда некую информацию вот так myData[i]="тест 1" и т.д.

3.затем пытаюсь ее выводить вот так <mx:List dataProvider ="{myData}" ...>

4.Ничего не выводиться и пишется, такая вещь как замечание:

Код:
data binding will not be able to detect assignments to "myData"

Как быть? Большое спасибо!!

Старый 23.10.2007, 00:03
baron27 вне форума Посмотреть профиль Отправить личное сообщение для baron27 Посетить домашнюю страницу baron27 Найти все сообщения от baron27
  № 2  
Ответить с цитированием
baron27
Контрибьютор базы знаний по Флекс
 
Аватар для baron27

Регистрация: Aug 2005
Сообщений: 690
поставь [Bindable] перед определением твоего массива и вообще лучше используй ArrayCollection
Код:
[Bindable] private var myData:ArrayCollection;
__________________
Flex 2 и Co

Старый 23.10.2007, 13:20
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 3  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
Цитата:
Сообщение от baron27
поставь [Bindable] перед определением твоего массива и вообще лучше используй ArrayCollection
Код:
[Bindable] private var myData:ArrayCollection;
Вообще не используй массив, а используй ArrayCollection, [Bindable] перед массивом никак не решит эту проблему )
__________________
33 коровы

Старый 23.10.2007, 16:45
NikR вне форума Посмотреть профиль Отправить личное сообщение для NikR Найти все сообщения от NikR
  № 4  
Ответить с цитированием
NikR

Регистрация: Nov 2006
Сообщений: 76
Вообщето [Bindable] преобразует Array в ArrayCollection, поэтому эквивалентно:
Код:
private var myData:ArrayCollection;
[Bindable] private var myData:Array;

Старый 23.10.2007, 18:01
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 5  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
никто никого никуда не преобразует!
Код:
[Bindable] 
public var myData:Array;
никак не преобразует этот массив в ArrayCollection, это действие просто говорит, что нужно генерить событие если мы изменили myData (именно поменяли сам myData на другой массив, а не изменили соедржимое myData)

Код:
myData = [1,2,3,4];
.....
myData.push(5) //биндингу пофиг
myData = [1,2,3,4,5]; //тут биндинг отработал, т.к. занчение изменилось
теперь далее, когда мы устанавливает в кому-то датапровайдер в виде массива, то внутри идет преобразование этого массива в ArrayCollection, но есть одно но

Код:
myData = [1,2,3,4];
.....
list.dataProvider = myData;
myData.push(5) // тут твоему листу пофигу ибо он незнает что что-то произашло (см. код выше почему).
если сделать
Код:
list.dataProvider = myData;
ArrayCollection(list.dataProvider).addItem(5);
то у нас лист обновится.

Вобщем я клоню к тому что юзайте детки всегда ArrayCollection вместо Array с таких случаях и будет вам счастье!.
__________________
33 коровы

Старый 23.10.2007, 21:43
quazare вне форума Посмотреть профиль Отправить личное сообщение для quazare Найти все сообщения от quazare
  № 6  
Ответить с цитированием
quazare
 
Аватар для quazare

Регистрация: Jul 2004
Сообщений: 430
спасиб!

Старый 24.10.2007, 01:29
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 7  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Цитата:
Вообщето [Bindable] преобразует Array в ArrayCollection, поэтому эквивалентно:
Мета тэг Bindable не занимается преобразованием, в случае со свойствами он просто создает get/set аксессоры, которые диспатчат событие обновления свойства.
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:47.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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