Réglage de la couleur d'arrière-plan de ligne de grille de données dans Adobe Flex
J'ai besoin de modifier par programmation la couleur de fond d'une seule ligne dans un datagrid dans Flex. J'ai écumé le Net et trouvé de référence à la dg".setPropertiesAt," ce qui n'est pas une méthode de prise en charge (selon le compilateur). Aussi, il ya des suggestions pour prolonger la dg "drawRowBackground" la méthode mais j'ai besoin de définir l'arrière-plan de l'extérieur (pas de logique à l'intérieur de la dg).
Toute suggestion bienvenue.
TIA,
Bob
Vous devez vous connecter pour publier un commentaire.
Vous aurez à utiliser un itemRenderer pour accomplir cette tâche. Voir les exemples suivants pour plus d'informations:
http://butterfliesandbugs.wordpress.com/2007/07/11/using-an-itemrenderer-to-change-the-background-of-a-datagrid-cell/
http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&postId=61&productId=2
Je me demandais la même chose juste un il ya quelques jours. Si vous avez la version Pro de Flex, son AdvancedDataGrid a la "styleFunction" des biens pour les gérer. Si vous avez seulement à l'ordinaire DataGrid à portée de main, ce qui pourrait aider:
http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=12548
Un commentaire liens vers la documentation de styleFunction:
http://livedocs.adobe.com/flex/3/langref/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.html#styleFunction
Au-delà, Stiggler la suggestion de l'utilisation d'une itemRenderer est votre autre recours.
L'utiliser avec d'étincelle.DataGrid
DataGridRowBackground.mxml:
Dans votre application code:
L'élément clé est IGridVisualElement interface qui vous permet de vous lier à votre dataProvider.
Cette interface est appelée par GridLayout. Voir: http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as. Vous pouvez utiliser n'importe quel IVisualElement comme un fond de moteur de rendu, mais avec s:DefaultGridItemRenderer vous avez quelques fonctionnalités de la boîte.
Espère que cette aide
Je l'ai réussi en étendant la classe DataGrid et créer ma propre méthode, comme ceci:
Cela a été inspirée par la drawRowBackgrounds méthode de la classe datagrid.
Espère que cela aide.
Où dg est votre grille de données et le nombre 3 est la ligne de la couleur de votre grille.