Orkut Gmail Agenda Docs Web mais »
Grupos visitados recentemente | Ajuda | Acessar
Página inicial dos Grupos do Google
Mensagem sobre o tópico A Velha história da DataGrid, ItemRenderer e RadioButton...
O grupo no qual você está postando é um grupo da Usenet. As mensagens postadas neste grupo farão com que o seu e-mail fique visível para qualquer pessoa na internet.
Sua resposta não foi enviada.
Postagem publicada
 
De:
Para:
Cc:
Encaminhar para
Adicionar Cc | Adicionar Encaminhar para | Editar Assunto
Assunto:
Validação:
Com o objetivo de verificação, digite os caracteres que você vê na figura abaixo ou os números que ouvir ao clicar no ícone de acessibilidade. Ouça e digite os números que ouvir
 
Marcelo Savioli  
Ver perfil   Traduzir para Traduzido (ver original)
 Mais opções 22 fev 2008, 21:33
De: "Marcelo Savioli" <marcelo.savi...@dclick.com.br>
Data: Fri, 22 Feb 2008 20:33:58 -0300
Local: Sex 22 fev 2008 21:33
Assunto: Re: [flexdev] Re: A Velha história da DataGrid, ItemRenderer e RadioButton...

Hahahahaha... muito bom Beck.. muito bom!

On 2/22/08, Beck Novaes <beck.nov...@gmail.com> wrote:

> Problemas com Item Renderers ou Item Editors? O seu Item Renderer/
> Editor não mantêm o estado? O seu Item Renderer/Editor não muda o
> valor do item da linha correspondente?

> SEUS PROBLEMAS ACABARAM!
> Ligue 011 1406 e peça já o "editorDataField".

> O "editorDataField " é testado e aprovado pelos Laboratórios Adobe e
> nós garantimos: Ele funciona!

> Caso Real (exemplo que não funciona):
> ============================

> <mx:DataGrid>
>         <mx:dataProvider>
>                 <mx:Object col1="Col 1.1 Data" col2="Col 1.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 2.1 Data" col2="Col 2.2 Data"
> selected="true"/>
>                 <mx:Object col1="Col 3.1 Data" col2="Col 3.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 4.1 Data" col2="Col 4.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 5.1 Data" col2="Col 5.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 6.1 Data" col2="Col 6.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 7.1 Data" col2="Col 7.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 8.1 Data" col2="Col 8.2 Data"
> selected="false"/

>         </mx:dataProvider>
>         <mx:columns>
>                 <mx:DataGridColumn dataField="col1" headerText="Col 1"/>
>                 <mx:DataGridColumn dataField="col2" headerText="Col 2"/>
>                 <mx:DataGridColumn dataField="selected"
> headerText="Selected">
>                         <mx:itemRenderer>
>                                 <mx:Component>
>                                         <mx:CheckBox selected="{
> data.selected}"/>
>                                 </mx:Component>
>                         </mx:itemRenderer>
>                 </mx:DataGridColumn>
>         </mx:columns>
> </mx:DataGrid>

> Depoimento de um programador Flex:
> ===========================
> "Eu desenvolvi o código acima, mas ao executá-lo, toda vez que eu
> marco um CheckBox na ultima linha do DataGrid e faço scroll ele perde
> o estado."

> Outro programador:
> ==============
> "Eu também já vi algo parecido, e ao ver o valor dos objetos eu
> percebi que eles não estavam sendo atualizados conforme eu marcava o
> CheckBox."

> Não se preocupem. Estes são casos comuns. Mas veja como o super
> "editorDataField" pode resolver o seu problema:

> Caso Real (exemplo que funciona):
> =========================
> <mx:DataGrid editable="true">
>         <mx:dataProvider>
>                 <mx:Object col1="Col 1.1 Data" col2="Col 1.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 2.1 Data" col2="Col 2.2 Data"
> selected="true"/>
>                 <mx:Object col1="Col 3.1 Data" col2="Col 3.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 4.1 Data" col2="Col 4.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 5.1 Data" col2="Col 5.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 6.1 Data" col2="Col 6.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 7.1 Data" col2="Col 7.2 Data"
> selected="false"/

>                 <mx:Object col1="Col 8.1 Data" col2="Col 8.2 Data"
> selected="false"/

>         </mx:dataProvider>
>         <mx:columns>
>                 <mx:DataGridColumn dataField="col1" headerText="Col 1"
> editable="false"/>
>                 <mx:DataGridColumn dataField="col2" headerText="Col 2"
> editable="false"/>
>                 <mx:DataGridColumn dataField="selected"
> headerText="Selected"
>                         rendererIsEditor="true"
> editorDataField="selected">
>                         <mx:itemRenderer>
>                                 <mx:Component>
>                                         <mx:CheckBox selected="{
> data.selected}"/>
>                                 </mx:Component>
>                         </mx:itemRenderer>
>                 </mx:DataGridColumn>
>         </mx:columns>
> </mx:DataGrid>

> Depoimento de um programador Flex:
> ===========================
> "Incrível! Depois de usar o super ultra plus 'editorDataField' os meus
> problemas acabaram. Agora eu posso fazer scroll a vontade e tudo
> funciona perfeitamente".

> Outro programador:
> ==============
> "Depois de usar o 'editorDataField' a minha vida mudou completamente.
> Agora os objetos são atualizados corretamente e eu não preciso ficar
> trabalhando até mais tarde para resolver o meu problema. A minha
> esposa ficou bastante feliz com isso".

> O "editorDataField" age diretamente no problema porque ele permite
> informar qual propriedade do "itemRenderer/editor" será usada para
> atualizar o item (linha do DataGrid). Sem isso, a propriedade default
> será usada e uma vez que a propriedade default é "text", se você
> estiver usando um ComboBox, RadioButton ou CheckBox isso não vai
> funcionar. Por isso, quando você usa um CheckBox, por exemplo, e diz
> que o "editorDataField" é "selectedItem" o DataGrid pegará o valor
> desta propriedade para atualizar a propriedade descrita pelo
> "dataField" do seu DataGridColumn.

> MAS NÃO É SÓ ISSO. Para usar o "editorDataField" com um "itemRenderer"
> você deve usar também a propriedade "rendererIsEditor" do seu
> "DataGridColumn".

> MAS NÃO É SÓ ISSO. Para usar o "editorDataField" você precisa usar
> também a propriedade "editable" do seu DataGrid.

> MAS NÃO É SÓ ISSO. Uma vez que você provavelmente não vai querer que
> todas as colunas sejam editáveis você deve usar também a propriedade
> "editable" de cada DataGridColumn.

> "editorDataField". Ligue para 011 1406 e peça já o seu!

> ATENÇÃO: Consulte também o manual do fabricante:

> http://livedocs.adobe.com/labs/flex3/html/help.html?content=cellrende...

> P.S.: Pessoal, desculpem a brincadeira, mas essa foi uma maneira que
> eu encontrei (adicionando um toque de humor) de deixar isto na
> "memória" das pessoas uma vez que este é um dos problemas mais
> recorrentes do Flex que eu já vi até hoje.

> On Feb 22, 4:40 pm, HideLine <IPra...@gmail.com> wrote:
> > Olá,

> > Sempre que uso ItemRender em uma DataGrid com componentes de ação,
> > tenho problemas em manter o estado, deste componente dentro da
> > DataGrid.

> > Ex:

> > http://forum.flexbrasil.com.br/viewtopic.php?f=3&t=187

> > Se alguém já achou uma solução, por favor post aki e lá para o
> > rdaraujo!

> > Obrigado.

--
Marcelo Curi Savioli
D-Click Web & Mobile Solutions
marcelo.savi...@dclick.com.br
www.dclick.com.br/blog
www.dclick.com.br

    Responder ao autor    Encaminhar  
É necessário Acessar antes de postar mensagens.
Para postar uma mensagem você precisa primeiro participar deste grupo.
Atualize seu apelido na página de configurações da inscrição antes de postar.
Você não tem a permissão necessária para postar.

Criar um grupo - Grupos do Google - Página inicial do Google - Termos de Uso - Política de Privacidade
©2009 Google