Frage

Ich habe ein sehr einfaches Datenraster mit 2 Spalten, soetwas wie folgt aus:

<mx:DataGrid id="grid" >
    <mx:columns>
        <mx:DataGridColumn dataField="name" headerText="Name"/>
        <mx:DataGridColumn dataField="date" headerText="Date"/>
    </mx:columns>
</mx:DataGrid>

Was Im versuchen zu tun ist, um die Ausgabe der ausgewählten Zeile zu aktivieren, wenn der Benutzer auf eine Schaltfläche klickt. Bisher habe ich es nicht gelungen, kein Beispiel zu finden, wie dies zu tun. Ich habe bereits versucht 6 oder 7 verschiedene Ansätze, aber nicht funktioniert. Hat jemand eine Ahnung hat, wie dies zu tun?

Wie bekommt man die ausgewählte Zeile (NICHT selectedItem) eines Datagrid und wie können Sie:

  • Ändern der ItemRenderEditor oder ItemRenderer on the fly von nur diese Zeile.
  • Oder die Ausgabe dieser speziellen Reihe zu ermöglichen, ohne darauf zu klicken.

Das sind die Fragen, die ich auf Antwort nicht in der Lage waren

Hilfe sehr geschätzt wird.

War es hilfreich?

Lösung

Sie können die ausgewählte Zeile mit der grid.selectedIndex Eigenschaft erhalten. Ein Gedanke Ihnen Problem:

  • Fügen Sie eine „editierbaren“ Eigenschaft auf Sie Elemente in der Datagrid, die standardmäßig falsch ist
  • Wenn Sie auf die Schaltfläche klicken, setzen grid.selectedItem.editable = true;
  • Ändern des Elementrenderers zu einem neuen jemandes Gitter, das zeigt TextInput- Felder, wenn ein Element bearbeitet werden kann oder einfach nur Etikett, wenn es nicht

Sie können den Artikel Renderer zur Laufzeit wie folgt ändern:

grid.itemRenderer = new ClassFactory(com.myapp.renderers.MyGridItemRenderer);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top