2009-04-09 7 views
1

Comment lier le fournisseur de données d'un DataGrid dans Flex à un tableau?Lier dataProvider DataGrid à un tableau

Cela ne semble pas fonctionner:

<mx:DataGrid 
    id="valuesDataGrid" 
    editable="true" 
    width="100%" 
    height="100%" 
    dataProvider="{_metaDataKey.values}"> 
... 

[Bindable] 
public class EnumMetaDataKey{ 

    private var _values:Array = []; 

    public function get values():Array { return _values; } 
    public function set values(value:Array):void { _values = value; } 
    ... 
+0

D'où obtenez-vous _metaDataKey? A quoi ressemble cette variable? Quelles erreurs obtenez-vous avec votre implémentation actuelle? Pouvez-vous fournir plus d'informations? – DyreSchlock

Répondre

3

Utilisez un ArrayCollection à la place. Array s ne se prêtent pas bien à la reliure. IIRC, cela est documenté dans le Flex 3 aide Binding to functions Objects and Arrays:

Note: Lors de la définition d'une expression de liaison de données qui utilise un tableau comme la source d'une expression de liaison de données, le tableau doit être de type ArrayCollection parce que la classe ArrayCollection distribue un événement lorsque le tableau ou les éléments du tableau changent pour déclencher la liaison de données. Par exemple, un appel à ArrayCollection.addItem(), ArrayCollection.addItemAt(), ArrayCollection.removeItem() et ArrayCollection.removeItemAt() déclenche tous la liaison de données.

Questions connexes