Domanda

Mi spiego la situazione ...

dg.selectedItems mi dà tutti i valori selezionati, ma se ho bisogno di un valore nomi di colonna solo allora che cosa devo fare.

<mx:DataGridColumn dataField="1" headerText="Email" />
È stato utile?

Soluzione

dg.selectedItems[itemIndex]["columnName"]

= itemIndex l'indice della voce selezionata nella matrice

Nota: Questo è se si dispone di allowMultipleSelection = true ... se si è selezionato solo un oggetto / fila utilizzare dg.selectedItem. Ciò restituirà un oggetto di tutte le colonne.

Aggiunto codice di esempio completo di lavoro di seguito:

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
   <mx:Script>
   <![CDATA[
    import mx.events.ListEvent;
    import mx.events.ItemClickEvent;
      import mx.collections.*;

      [Bindable]
      private var dp:ArrayCollection = new ArrayCollection( [
         {Artist:'Pavement', Album:'Slanted and Enchanted', Price:11.99},
         {Artist:'Pavement', Album:'Brighten the Corners', Price:12.99},
         {Artist:'Miley Cyrus', Album:'Break Out', Price:10.99}] );


       private function clickItemHandler(event:ListEvent):void{

            if(myGrid.selectedItem != null){
                trace(myGrid.selectedItem["Album"]);
            }

       }

   ]]>
   </mx:Script>

   <mx:DataGrid id="myGrid" width="350" height="200" 
      dataProvider="{dp}" itemClick="clickItemHandler(event);" >
      <mx:columns>
         <mx:DataGridColumn dataField="Album" />
         <mx:DataGridColumn dataField="Price" />
      </mx:columns> 
   </mx:DataGrid>
</mx:Application>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top