4

How can I add a button control in cells of a datagrid? I'm looking to have a button in each row of one column in the datagrid. The datagrid control rows don't need to be selectable in any way.

Wade Mueller
  • 6,059
  • 17
  • 19
Anonymous1
  • 3,877
  • 3
  • 28
  • 42

2 Answers2

11

It's really quite simple. Just define a custom item renderer for the column

<mx:DataGrid width="100%" height="100%" dataProvider="{this.someData}">
        <mx:columns>                
            <mx:DataGridColumn headerText="Buttons" >
                <mx:itemRenderer>
                    <fx:Component>
                        <s:ItemRenderer width="100%">
                            <s:Button label="{data.buttonName}" click="{outerDocument.someFunction()}" />
                        </s:ItemRenderer>
                    </fx:Component>
                </mx:itemRenderer>
            </mx:DataGridColumn>
       </mx:columns>
</mx:DataGrid>

use data to refer to the row's dataprovider object and outerDocument to access methods outside of the item renderer.

Hope this helps!

Ian T
  • 761
  • 4
  • 7
0

To do this with Flex 4 controls - ie. Spark use a GridItemRenderer.

There are very good examples here: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/gridClasses/GridItemRenderer.html#includeExamplesSummary

Ross Attrill
  • 2,594
  • 1
  • 22
  • 31