Je souhaite étendre le composant DataGrid de sorte qu'il existe une colonne (en lecture seule) pour le numéro de ligne, comme vous le voyez dans les feuilles de calcul. Je suis tombé sur cet article http://www.cflex.net/showFileDetails.cfm?ObjectID=735 mais cela dépend des données étant unique pour chaque ligne afin qu'il puisse indexer dans le tableau. Si les données ne sont pas uniques (comme pour une grille vide) cela ne fonctionne pas. Comment puis-je l'implémenter?Flex DataGrid avec la colonne de numéro de ligne
2
A
Répondre
-1
j'ai pu le faire en mettant en œuvre une coutume itemRenderer, RowNumberRenderer.as
package com.domain
{
import mx.collections.IList;
import mx.controls.Label;
import mx.controls.listClasses.ListBase;
public class RowNumberRenderer extends Label
{
public function RowNumberRenderer()
{
super();
}
override public function set data(value:Object):void
{
super.data = value;
this.text = String(IList(ListBase(listData.owner).dataProvider).getItemIndex(data) + 1);
}
}
}
0
Assurez-vous que le fournisseur de données a une colonne ou une propriété unique, alors ne montrez pas cette colonne/propriété si vous ne voulez pas. La clé est le fournisseur de données
-1
comment sur les points suivants:
RendererRowIndexPlusOne.as
package
{
import mx.controls.Label;
import mx.utils.StringUtil;
import mx.utils.ObjectUtil;
public class RendererRowIndexPlusOne extends Label
{
public override function set data(item:Object):void {
super.data = item;
trace('listData.label ' + listData.label);
trace('listData.rowIndex ' + listData.rowIndex);
trace('listData.columnIndex ' + listData.columnIndex);
trace('listData.owner ' + listData.owner);
text = String(listData.rowIndex + 1);
}
}
}
2
Cela a fonctionné pour moi:
<mx:Label xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.AdvancedDataGrid;
private var handleDataChangedEnabled:Boolean = false;
override public function set data(value:Object):void {
super.data = value;
if (!handleDataChangedEnabled) {
addEventListener("dataChange", handleDataChanged);
}
}
public function handleDataChanged(event:Event):void {
this.text = String(listData.rowIndex + (listData.owner as AdvancedDataGrid).verticalScrollPosition + 1);
}
]]>
</mx:Script>
Bien sûr, vous devez remplacer AdvancedDataGrid par DataGrid.
Cheers.
0
Il suffit d'utiliser cette classe comme itemRenderer: RowNumColumnRenderer.as
package
{
import mx.collections.IList;
import mx.controls.AdvancedDataGrid;
import mx.controls.Label;
import mx.controls.listClasses.ListBase;
public class RowNumColumnRenderer extends Label
{
override public function set data(value:Object):void
{
super.data = value;
if (listData != null)
this.text = (AdvancedDataGrid(listData.owner).itemRendererToIndex(this) + 1).toString();
}
}
}
Questions connexes
- 1. Flex DataGrid Largeur de colonne
- 2. Largeur de colonne Flex 3 DataGrid Problème
- 3. Modifier dynamiquement la largeur de la colonne Datagrid dans FLEX
- 4. flex air datagrid itemRenderer
- 5. Get index de cellules de dataGrid flex
- 6. ASP.NET Datagrid - masquer une ligne/colonne spécifique
- 7. Silverlight DataGrid Redraw Numéro
- 8. Flex - Datagrid ItemRenderer
- 9. Personnaliser le tri de datagrid en flex
- 10. DB2: accès à la colonne par numéro de colonne
- 11. Liens dans Datagrid (flex)
- 12. Je dois obtenir les valeurs particulières dans Flex DataGrid colonne
- 13. cellule de mise au point flex datagrid
- 14. WPF DataGrid Colonne ComboBox: Propagating Header Combobox dans la colonne
- 15. Afficher la ligne actuelle et le numéro de colonne pour une zone de texte
- 16. Définition de la couleur d'arrière-plan pour la ligne DataGrid dans Adobe Flex
- 17. Array Objects et Datagrid avec bouton Link (bouton Clear) dans Adobe Flex
- 18. Flex Datagrid Query
- 19. Colonne avec la valeur DateTime dans WPFToolkit DataGrid
- 20. Autoscroll Datagrid dans Flex
- 21. Numéro de série Colonne dans ListView
- 22. Flex: articles de groupe dans DataGrid
- 23. Flex CheckBox Datagrid
- 24. Contrôle du DataGrid Flex avec lignes en expansion
- 25. Couleur de cellule DataGrid Flex 3
- 26. Flex - Comment trouver l'objet de cellule Datagrid
- 27. Fonction de tri numérique universelle de DataGrid Flex?
- 28. Commande de colonne DataGrid dans ActionScript
- 29. WPF DataGrid Bouton Colonne Désactiver
- 30. Modifier Datagrid ligne