2010-03-12 4 views
0

J'ai une grille de données qui utilise un tableau d'objets en tant que fournisseur de données. Les objets sont essentiellement des paires clé/valeur: {foo: "quelque chose"} { bar: "bonjour"} { de caca: "Lorem"} Le DataGrid a 2 colonnes. La première colonne est la clé et la deuxième colonne est la valeur. En ce moment, ma grille ressemble: Flex DataGridColumn avec un tableau d'objets en tant que fournisseur de données

Ma fonction dataFormatter veille à ce que en fonction de la colonne (à savoir la valeur dataField) la bonne clé ou de la valeur s'imprimé. Cela fonctionne très bien pour l'affichage. Cependant, dès que j'essaie d'éditer le champ de valeur, il ajoute essentiellement une nouvelle valeur dans l'objet avec une clé de '1'. Par exemple, si j'édite l'objet {caca: "lorem"}, il contiendra alors la valeur {caca: "lorem", 1: "nouvelle valeur"}.

Est-il possible de définir DataGridColumn de sorte que lorsque je modifie une valeur, il met à jour la valeur associée à la clé plutôt que d'insérer une nouvelle valeur? J'ai essayé d'utiliser un éditeur d'élément personnalisé, mais il fait toujours l'insertion. Il semble que je doive être capable de mettre à jour le 'dataField' avec la valeur clé réelle, mais je ne suis pas sûr de savoir comment faire cela.

+0

Vous voulez afficher un code? – Robusto

+0

var arr: Array = new Array(); // // Configurer la paire clé/valeur d'objets // arr.push ({foo: "bar"}); arr.push ({cat: "dog"}); arr.push ({kick: "tothegroin"}); var ac: ArrayCollection = new ArrayCollection (arr); ... ps Je tape ça du haut de ma tête. – rforte

+0

wow, ce qui précède n'est pas lisible. est-il possible de mettre en forme du code dans un commentaire? – rforte

Répondre

0

On dirait que vous devez penser à l'endroit où vos données vont être stockées. Je vous recommande d'écouter un événement CollectionEvent.COLLECTION_CHANGE sur votre modèle de données. Cet objet d'événement contient des informations sur les modifications effectuées et vous pouvez effectuer les mises à jour nécessaires.

Questions connexes