Flex ComboBox, valeur par défaut et fournisseurs de données
J'ai un Flex zone de liste déroulante qui est renseigné par un dataprovider tout va bien...
Je voudrais maintenant ajouter une valeur par défaut " -- sélectionnez un élément --" option à l'indice 0, comment puis-je faire cela et encore l'utilisation d'un fournisseur? Je n'en ai pas vu des exemples de telles, mais je ne peux pas imaginer que cela soit dur...
source d'informationauteur mmattax
Vous devez vous connecter pour publier un commentaire.
Si vous n'avez pas besoin de l'élément par défaut pour être sélectionnable, vous pouvez utiliser le
prompt
propriété deComboBox
et définir laselectedIndex
à -1. Qui affiche la chaîne de caractères que vous définissezpropmt
la valeur sélectionnée jusqu'à ce que l'utilisateur choisit un autre. Il n'apparaîtra pas dans la liste d'options, cependant.Je suis tombé sur ce problème aujourd'hui et je voulais partager ma solution.
J'ai un ComboBox qui a un type arraycollection contenant des Objets, comme c'est dataprovider. Lorsque l'application s'exécute, il utilise un composant RemoteObject de sortir et d'obtenir le type arraycollection/Objets. Dans mon gestionnaire d'événements pour cet appel, je viens de l'avoir ajouter un autre objet pour le début de la type arraycollection et sélectionner:
C'est ce que mon ComboBox ressemble pour l'référence:
La manière dont j'ai traité dans le passé est de créer une nouvelle collection pour servir en tant que fournisseur de données pour la zone de liste déroulante, puis j'écoute les changements apportés à la source d'origine (à l'aide d'un
mx.BindingUtils.ChangeWatcher
). Quand je reçois une notification à cet effet, j'ai recréer mon fournisseur de données personnalisé.Je souhaite que je connaissais une meilleure façon d'aborder cette question; je vais surveiller cette question juste au cas où.
Ceci peut être utilisé le code suivant pour la sélection valeur par défaut de la zone de liste déroulante