Primeiramente, desculpe estar criando um tópico com assunto já
repetido.
Eu já li e re-li várias tópicos existentes mas minha dúvida persiste.
Meu Problema: Preciso colocar um CheckBox no HeaderRenderer do
DataGrida para que, quando ele for maracado/desmarcado, todos os
CheckBoxs no ItemRenderer sejam marcados/desmarcados.
Atualmente eu possuo o DataGrid com um CheckBox num ItemRenderer que
funciona perfeitamente, eu marco/desmarco e o ArrayCollection que
alimenta o DataProvider é alterado.
Meu Formulário
Em determinado momento eu executo essa instrução:
trace(ObjectUtil.toString(lista_requisicao_item));
para mais informações, eu usei como exemplo o algorítimo do
Vedoveli.
http://www.vedovelli.com.br/?p=1290
Meu DataProvider.
private var lista_requisicao_item:ArrayCollection = new
ArrayCollection([{excluir:false}]);
o ArrayCollection é preenchido com o que vem do back-end, e por
padrão, a propriedade "excluir" vem como "false";
Meu DataGrid.
<mx:DataGrid dataProvider="{lista_requisicao_item}"
id="dg_requisicao_item">
<mx:columns>
<mx:DataGridColumn headerText="X" textAlign="center"
dataField="excluir"
itemRenderer="br.com.app.component.ItemRendererChk" width="40"/>
</mx:columns>
</mx:DataGrid>
Meu ItemRenderer
<mx:Box xmlns:mx="http://www.adobe.com/2006/mxml" paddingLeft="15">
<mx:Script>
<![CDATA[
override public function set data(value:Object):void
{
super.data = value;
if(value.excluir == true)
{
chk.selected = true;
} else {
chk.selected = false;
}
}
private function alterar():void
{
data.excluir = chk.selected;
}
]]>
</mx:Script>
<mx:CheckBox id="chk" change="alterar()"/>
</mx:Box>
--
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