2009-05-11 7 views
0

사용자 정의 itemRenderer이있는 DataGrid가 있습니다. 셀을 클릭하면 해당 참조를 얻습니다. 이제는 sae 행의 다른 열에 대한 참조를 얻고 싶습니다. 예 : DataArray에서 제 3 행의 4 번째 열을 클릭 했으므로 그 점에 대해서는 아무런 문제가 없습니다. 이제 같은 행의 첫 번째 열, 즉 세 번째 열의 참조를 얻으려고합니다.플렉스 에어 DataGrid itemRenderer

방법이 있습니까?

감사합니다.

답변

0

사용자 지정 항목 렌더러는 데이터 기반이어야합니다. 다시 말해, 관심있는 모든 것은 렌더러의 "데이터"속성에 있어야합니다. 다른 셀을 조작해야하는 경우 행의 데이터를 조작해야하며 셀은 자체를 업데이트해야합니다.

그 이유는 그로 인해 어려움을 겪고있는 것입니다. 다른 셀에 대한 참조를 얻는 좋은 방법이 아닙니다. 이 나쁜 가지 방법이 있습니다,하지만 그들은 내가이 완전히 올바른 이해 경우 :

0

모르는 나쁜 것하지만 ... 여기 간다 당신의 데이터 그리드에

넣어 클릭 이벤트

<mx:DataGrid id="myDatagrid" click="getValues()" dataProvider="{someArrayColl}"/> 

'id_column'스크립트 선 사이 : 첫 번째 열에는 이름을 가지고 가정 해 봅시다

private function getValues():void{ 
var first_column_value:String = myDatagrid.selectedItem.id_column; 

//if you want the entire row in 1 Array 
var the_selected_row:Array = myDatagrid.selectedItem as Array; 
} 

배열 문을 테스트하지를하지만 작동합니다. myDatagrid.selectedItem은 기본적으로 arraycollection의 객체입니다.

// getValues ​​함수에서 try 및 catch 문을 사용하여 사용자가 headeritem이나 DataGrid 스크롤 막대를 클릭 할 때 예외를 catch해야합니다.

관련 문제