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...

Visualizar analisado - Mostrar apenas o texto da mensagem ??

MIME-Version: 1.0
Message-ID: <606b0ce2-b1ef-43a5-835d-7cb18e430df5@d21g2000prf.googlegroups.com>
Date: Fri, 22 Feb 2008 14:57:59 -0800 (PST)
Received: by 10.100.178.13 with SMTP id a13mr388147anf.8.1203721080074; Fri, 
	22 Feb 2008 14:58:00 -0800 (PST)
In-Reply-To: <9eceffb1-294c-4e02-bcc9-d1944f5fae92@p25g2000hsf.googlegroups.com>
X-IP: 67.152.16.226
References: <9eceffb1-294c-4e02-bcc9-d1944f5fae92@p25g2000hsf.googlegroups.com>
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.12) 
	Gecko/20080201 Firefox/2.0.0.12,gzip(gfe),gzip(gfe)
Subject: =?ISO-8859-1?Q?Re:_A_Velha_hist=F3ria_da_DataGrid,_ItemRenderer_e_Ra?=
	=?ISO-8859-1?Q?dioButton...?=
From: Beck Novaes <beck.nov...@gmail.com>
To: flexdev <flexdev@googlegroups.com>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Problemas com Item Renderers ou Item Editors? O seu Item Renderer/
Editor n=E3o mant=EAm o estado? O seu Item Renderer/Editor n=E3o muda o
valor do item da linha correspondente?

SEUS PROBLEMAS ACABARAM!
Ligue 011 1406 e pe=E7a j=E1 o "editorDataField".

O "editorDataField " =E9 testado e aprovado pelos Laborat=F3rios Adobe e
n=F3s garantimos: Ele funciona!

Caso Real (exemplo que n=E3o funciona):
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D

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

>
		<mx:Object col1=3D"Col 2.1 Data" col2=3D"Col 2.2 Data" selected=3D"true"/>=

		<mx:Object col1=3D"Col 3.1 Data" col2=3D"Col 3.2 Data" selected=3D"false"/=

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

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

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

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

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

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


Depoimento de um programador Flex:
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D
"Eu desenvolvi o c=F3digo acima, mas ao execut=E1-lo, toda vez que eu
marco um CheckBox na ultima linha do DataGrid e fa=E7o scroll ele perde
o estado."

Outro programador:
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
"Eu tamb=E9m j=E1 vi algo parecido, e ao ver o valor dos objetos eu
percebi que eles n=E3o estavam sendo atualizados conforme eu marcava o
CheckBox."


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


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

>
		<mx:Object col1=3D"Col 2.1 Data" col2=3D"Col 2.2 Data" selected=3D"true"/>=

		<mx:Object col1=3D"Col 3.1 Data" col2=3D"Col 3.2 Data" selected=3D"false"/=

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

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

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

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

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

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

Depoimento de um programador Flex:
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D
"Incr=EDvel! 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:
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
"Depois de usar o 'editorDataField' a minha vida mudou completamente.
Agora os objetos s=E3o atualizados corretamente e eu n=E3o preciso ficar
trabalhando at=E9 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=E1 usada para
atualizar o item (linha do DataGrid). Sem isso, a propriedade default
ser=E1 usada e uma vez que a propriedade default =E9 "text", se voc=EA
estiver usando um ComboBox, RadioButton ou CheckBox isso n=E3o vai
funcionar. Por isso, quando voc=EA usa um CheckBox, por exemplo, e diz
que o "editorDataField" =E9 "selectedItem" o DataGrid pegar=E1 o valor
desta propriedade para atualizar a propriedade descrita pelo
"dataField" do seu DataGridColumn.

MAS N=C3O =C9 S=D3 ISSO. Para usar o "editorDataField" com um "itemRenderer"=

voc=EA deve usar tamb=E9m a propriedade "rendererIsEditor" do seu
"DataGridColumn".

MAS N=C3O =C9 S=D3 ISSO. Para usar o "editorDataField" voc=EA precisa usar
tamb=E9m a propriedade "editable" do seu DataGrid.

MAS N=C3O =C9 S=D3 ISSO. Uma vez que voc=EA provavelmente n=E3o vai querer q=
ue
todas as colunas sejam edit=E1veis voc=EA deve usar tamb=E9m a propriedade
"editable" de cada DataGridColumn.


"editorDataField". Ligue para 011 1406 e pe=E7a j=E1 o seu!

ATEN=C7=C3O: Consulte tamb=E9m o manual do fabricante:
http://livedocs.adobe.com/labs/flex3/html/help.html?content=3Dcellrenderer_1=
.html


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



On Feb 22, 4:40 pm, HideLine <IPra...@gmail.com> wrote:
> Ol=E1,
>
> Sempre que uso ItemRender em uma DataGrid com componentes de a=E7=E3o,
> tenho problemas em manter o estado, deste componente dentro da
> DataGrid.
>
> Ex:
>
> http://forum.flexbrasil.com.br/viewtopic.php?f=3D3&t=3D187
>
> Se algu=E9m j=E1 achou uma solu=E7=E3o, por favor post aki e l=E1 para o
> rdaraujo!
>

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