Segue abaixo exemplo mostrando como disparar evento de dentro do
itemrenderer.

Application:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009";
                           xmlns:s="library://ns.adobe.com/flex/spark"
                           xmlns:mx="library://ns.adobe.com/flex/mx"
                           initialize="application1_initializeHandler(event)">
        <fx:Script>
                <![CDATA[
                        import mx.controls.Alert;
                        import mx.events.FlexEvent;

                        protected function
application1_initializeHandler(event:FlexEvent):void
                        {
                                dataGrid.addEventListener("EXCLUIR_EVENT", 
excluirHandler);
                        }

                        private function excluirHandler(event:Event):void
                        {
                                Alert.show("Excluir o item");
                        }

                ]]>
        </fx:Script>

        <fx:Declarations>
                <!-- Place non-visual elements (e.g., services, value objects) 
here
-->
                <fx:Model id="model">
                        <root>
                                <nome>Pablo</nome>
                        </root>
                </fx:Model>
        </fx:Declarations>

        <s:layout>
                <s:HorizontalLayout verticalAlign="middle" 
horizontalAlign="center" /
>
        </s:layout>

        <mx:DataGrid id="dataGrid" dataProvider="{model}">
                <mx:columns>
                        <mx:DataGridColumn headerText="Nome" dataField="nome" />
                        <mx:DataGridColumn headerText="Ação"
itemRenderer="ButtonItemRenderer" />
                </mx:columns>
        </mx:DataGrid>

</s:Application>



ItemRenderer:

<?xml version="1.0" encoding="utf-8"?>
<s:MXDataGridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009";
                                                  
xmlns:s="library://ns.adobe.com/flex/spark"
                                                  
xmlns:mx="library://ns.adobe.com/flex/mx"
                                                  focusEnabled="true">

        <fx:Metadata>
                [Event(name="EXCLUIR_EVENT",type="flash.events.Event")]
        </fx:Metadata>

        <fx:Script>
                <![CDATA[
                        protected function 
lblData_clickHandler(event:MouseEvent):void
                        {
                                dispatchEvent(new Event("EXCLUIR_EVENT",true));
                        }
                ]]>
        </fx:Script>

        <s:Button id="lblData" top="0" left="0" right="0" bottom="0"
                          label="Excluir" click="lblData_clickHandler(event)" />

</s:MXDataGridItemRenderer>




Abs!


------
@Pablo_Souza
http://rectius.com.br


On Dec 29, 1:53 pm, Lorenzi <[email protected]> wrote:
> Legal com o parentApplication funcionou, Fabio poderia me passar um
> exemplo de como usar um evento neste caso, tenho interesse em saber
> como funciona este processo.
>
> Garto.
>
> On Dec 29, 1:41 pm, Helio Antonio Francisco Silva
>
>
>
> <[email protected]> wrote:
> > GERALMENTE eu uso parentApplication e nunca tive maiores problemas e claro
> > isso no flex 3, no 4 ainda nao tentei...
>
> > 2010/12/29 fabiophx <[email protected]>
>
> > > Lorenzi,
> > >    Vc pode usar parentApplication mas o melhor é disparar um evento
> > > bubbles, aí vc fica monitorando e executa o q for necessário.
>
> > > []s
> > > Fabio da Silva
> > >http://www.fabiophx.blogspot.com/
>
> > > On Dec 29, 11:43 am, Lorenzi <[email protected]> wrote:
> > > > Legal, estava fazendo uns teste mas nao consegui fazer uma coisa?
>
> > > > Tipo tenho um itemrenderer que é um Button, ate ai ok mostra legal,
> > > > mas como fazer com que no clique do botão execute uma funcao na minha
> > > > app ou seja na app que esta o grid?
>
> > > > On Dec 28, 1:08 pm, Helio Antonio Francisco Silva
>
> > >  --
> > > Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> > > Para enviar uma mensagem, envie um e-mail para [email protected]
> > > Para sair da lista, envie um email em branco para
> > > [email protected]
> > > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev
>
> > --
> > *Hélio Antonio Fransico Silva*
> > Desenvolvedor web
> > Certificado Flash developer
> > Certificado Flash Design
> > Certificado web developer
> > Consultor Microsiga / Totvs
> > Desenvolvedor ADVPL / ASP
> > Analista de sistemas e ERP Sênior.- Hide quoted text -
>
> - Show quoted text -

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a