Preciso que ao ser aplicado o filtro abaixo, uma variavel armazene quantas linhas o data grid possui.
A atualização precisa ser no momento do filtro.
Obrigado.
if (cbFiltro.text==“Nome do Grupo”){
listaCPF.filterFunction = encontreGrpUsrNom;
listaCPF.refresh();
}
private function encontreGrpUsrNom(item:Object):Boolean {
var encontrado:Boolean = false;
/* Criterio do Filtro */
if (item.GrpUsrNom.toLowerCase().search(txtNomeFiltro.text.toLowerCase()) != -1)
return true;
else
return false;
}
Minha primeira recomendação é vc ler esse Tópico, assim vc ajuda o pessoal da comunidade a te ajudar.
Respondendo sua pergunta, vc pode contar os itens de seu grid pelo próprio ArrayCollection. Segue exemplo:
[code]<?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"
minWidth="955"
minHeight=“600”>
<s:layout>
<s:VerticalLayout horizontalAlign=“center”/>
</s:layout>
fx:Script
<![CDATA[
import mx.collections.ArrayCollection;
import mx.collections.Sort;
public var collectionTest:ArrayCollection=new ArrayCollection([ “aa”,“ab”,“ad”,“ba”,“bd” ]);
protected function button1_clickHandler(event:MouseEvent):void {
collectionTest.filterFunction=function(str:String):Boolean {
return str.charAt(0)=="a";
}
collectionTest.refresh();
lblResult.text="Itens na collection: "+collectionTest.length;
}
protected function button2_clickHandler(event:MouseEvent):void {
collectionTest.filterFunction=null;
collectionTest.refresh();
lblResult.text="Itens na collection: "+collectionTest.length;
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Label id="lblResult"/>
<s:Button label="Colocar filtro" click="button1_clickHandler(event)"/>
<s:Button label="Remover filtro" click="button2_clickHandler(event)"/>
</s:Application>
[/code]
Precisando de curso flex, de uma olhada na Nuccitec.
[]s