Sorry, I just answered my own question....

It appears that you should never be able to access an ItemRenderer directly. If 
I want to find out that a checkbox is selected then I must listen for that 
event in the ItemRenderer and then set a value on the 'data' property. Then, 
the dataProvider is available to me with the updated value.

That's the beauty of an ItemRenderer, I guess.  

--- In flexcoders@yahoogroups.com, "Matthew" <fume...@...> wrote:
>
> Hi - 
> 
> I have a button outside an AdvancedDataGrid. On the click event, I want to 
> find which of my checkbox item renderers are selected. For some reason, I 
> can't figure out. Here's my code below. Any tips are greatly appreciated. 
> 
> Thank you!
> 
> <mx:Button label="Remove Selections" click="removeGrouping();" />
>       <mx:AdvancedDataGrid
>               id="GroupingGrid"
>               width="100%"
>               height="45%">
>               <mx:dataProvider>
>                       <mx:HierarchicalData source="{model.groupingColl}" />
>               </mx:dataProvider>
>               <mx:columns>
>                       <mx:AdvancedDataGridColumn textAlign="center" 
> dataField="label"  headerText="Group"/>
>                       <mx:AdvancedDataGridColumn textAlign="center" 
> dataField="cpName" headerText="CP Name" />
>                       <mx:AdvancedDataGridColumn textAlign="center" 
> dataField="parentId" headerText="Parent ID" />
>                       <mx:AdvancedDataGridColumn textAlign="center" 
> dataField="parentName" headerText="Parent Name" />
>                       <mx:AdvancedDataGridColumn id="removeItemCol" 
> dataField="removable" headerText="Remove" />
>               </mx:columns>
>               
>               <mx:rendererProviders>
>               <mx:AdvancedDataGridRendererProvider 
>                   column="{removeItemCol}"
>                   columnSpan="1" 
>                   renderer="com.renderer.RemoveItemCheckboxRenderer"/>
>           </mx:rendererProviders>
>       </mx:AdvancedDataGrid>
> 
> 
> And here's my removeGroup() method. It returns null on the 'renderer' 
> variable. 
> 
> /** User wants to remove a grouping
>                        */
>                        private function removeGrouping():void{
>                               // Loop over the dataProvider and find the 
> items selected, then remove them. 
>                               var dpLength:int = 
> GroupingGrid.dataProvider.length;
>                               for( var i:int=0; i<dpLength; i++ ){
>                                       var im:Array = 
> GroupingGrid.rendererProviders; // .renderer.generator as 
> com.renderer.RemoveItemCheckboxRenderer;
>                                       var j:int=0;
>                                       while( j<im.length ){
>                                               var 
> myim:AdvancedDataGridRendererProvider = im[j] as 
> AdvancedDataGridRendererProvider;
>                                               var 
> renderer:RemoveItemCheckboxRenderer = myim.renderer as 
> RemoveItemCheckboxRenderer;
>                                               j++;
>                                       }       
>                               }
>                        }
>


Reply via email to