Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Setting background color for datagrid row in Adobe Flex

I need to programmatically change the background color for a single row in a datagrid in Flex. I've scoured the Net and found reference to "dg.setPropertiesAt," which is not a supported method (according to the compiler). Also, there are suggestions to extend the dg's "drawRowBackground" method but I need to set the background externally (not from logic inside the dg).

Any and all suggestions welcome.

TIA, Bob

like image 759
Bob Spidell Avatar asked Apr 14 '09 15:04

Bob Spidell


2 Answers

You'll have to use an itemRenderer in order to accomplish this. See the following examples for more information:

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

like image 120
Stiggler Avatar answered Oct 13 '22 12:10

Stiggler


I was wondering the same thing just a couple of days ago. If you have the Pro version of Flex, its AdvancedDataGrid has the built-in "styleFunction" property to handle this. If you've only got the regular DataGrid handy, this might help:

http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=12548

A comment there links to documentation of styleFunction:

http://livedocs.adobe.com/flex/3/langref/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.html#styleFunction

Beyond that, Stiggler's suggestion for using an itemRenderer is your other recourse.

like image 38
Todd Avatar answered Oct 13 '22 12:10

Todd