Flex DataGrid consulta
-
06-07-2019 - |
Pergunta
A seguir faz parte do meu código interagindo com grade de dados ...!
Esta lista os filhos do nó particular, se eu clicar sobre ele depois de atualizar o datagrid ..
Mas se eu clicar em um espaço vazio do datagrid eu recebo um erro dizendo
"ReferenceError: Erro # 1069:. Dados do imóvel não foi encontrado na mx.controls.listClasses.ListBaseContentHolder e não há valor padrão"
Como evitar isso?
if (event.target.data.children! = Null) { resultSet.removeAll (); var tempChildObj: ArrayCollection; tempChildObj = event.target.data.children como ArrayCollection; var childLength: int; childLength = tempChildObj.length;
for(var i:int =0;i<childLength;i++)
{
resultSet.addItem(tempChildObj.getItemAt(i));
}
resultSet.addItem(tempChildObj);
}
}
Solução
O que o erro está lhe dizendo é que a propriedade target
do evento não tem uma propriedade chamada data
no seu caso de erro. Isso faz sentido, já que você está clicando em uma linha em branco -. Uma linha em branco não contêm quaisquer dados
O que você vai querer fazer primeiro é verificar se target
do evento contém uma propriedade data
antes de começar a acessar a propriedade child
de data
. Qualquer um dos seguintes testes deve funcionar:
if( event.target.hasOwnProperty( "data" ) ) {
// rest of your code here
}
ou
if( event.target.data ) {
// rest of your code here
}