Flex Datagrid Query - PullRequest
       19

Flex Datagrid Query

0 голосов
/ 31 июля 2009

Ниже приведена часть моего кода, взаимодействующего с сеткой данных ...!

Здесь перечислены дочерние элементы определенного узла, если я щелкну по нему после обновления сетки данных.

Но если я нажму на пустое место в сетке данных, я получу сообщение об ошибке

"ReferenceError: Ошибка # 1069: данные свойства не найдены в mx.controls.listClasses.ListBaseContentHolder и значение по умолчанию отсутствует."

Как этого избежать?

if (event.target.data.children! = Null) { resultSet.removeAll (); var tempChildObj: ArrayCollection; tempChildObj = event.target.data.children as ArrayCollection; var childLength: int; childLength = tempChildObj.length;

        for(var i:int =0;i<childLength;i++)
        {

            resultSet.addItem(tempChildObj.getItemAt(i));

        }

        resultSet.addItem(tempChildObj);
    }


}

1 Ответ

1 голос
/ 31 июля 2009

Ошибка говорит вам о том, что свойство target события не имеет свойства с именем data в вашем случае ошибки. Это имеет смысл, поскольку вы нажимаете на пустую строку - пустая строка не будет содержать никаких данных.

Сначала вам нужно проверить, содержит ли событие target свойство data, прежде чем вы начнете обращаться к свойству child data. Любой из следующих тестов должен работать:

if( event.target.hasOwnProperty( "data" ) ) {
    // rest of your code here
}

или

if( event.target.data ) {
    // rest of your code here
}
...