Список искр Flex 4.1 очищает свойство selectedItems при изменении поставщика данных - PullRequest
0 голосов
/ 05 июля 2011

Я обнаружил проблему в платформе Flex.Я использую Flex 4.1.В классе скина MySkinnableContainer определен компонент List:

<s:List id="myList" allowMultipleSelection="true"/>

Затем в MySkinnableContainer я динамически изменяю myList.dataProvider и myList.selectedItems.Но когда я определяю myList.dataProvider = new ArrayCollection ([1,2, ...]), myList.selectedIndices не очищается.Я ловлю исключение при вызове myList.selectedItems, потому что myList.selectedIndices является старым.myList.selectedIndices = [] и т. д. не работает.Помоги мне, пожалуйста.Спасибо.

1 Ответ

0 голосов
/ 06 июля 2011

Fixed.Решение состоит в следующем:

  1. Сначала, когда вы устанавливаете dataProvider = new myArrayCollection ([1,2 ...]), затем вы должны ждать события updateComplete - selectedItems и selectedIndices теперьclear.
  2. Во-вторых, вы можете установить свои собственные selectedItems, напр.selectedItems = new Vector.int (), и прежде чем вызывать getter selectedItems, вы должны дождаться события valueCommit.
  3. В-третьих, теперь вы можете вызывать getter selectedItems без исключения.
...