Ce matin, je suis tombé sur un bug assez énervant qui faisait qu’après une réassignation du dataProvider d’une comboBox, celle ci ne se mettait pas à jour visuellement de suite. Par exemple, si ma comboBox contient 3 éléments, puis que je lui donne un nouveau tableau avec 5 éléments, la liste déroulante prend la place de 5 lignes, mais il n’y a que 3 éléments affichés. Pour corriger ce soucis (qui semble avoir été corrigé dans Flex 4, mais pas dans la version 3.5 que j’utilise sur mon projet courant), il faut réassigner aussi le dataProvider de la liste déroulante.
Voici le bout de code qui fait l’affaire :
1 2 3 | var newArray : Array = [ 0, 1, 2, 3, 4 ]; // Nouveau tableau à assigner combo.dataProvider = newArray; // Assignation du dataProvider de la comboBox combo.dropdown.dataProvider = newArray; // Assignation de la liste déroulante |

Commentaires