2012-11-02 3 views
0

(자바 + 플렉스) 자바 클래스 메소드와 같은 .. flex에있는 Datgrid에 java ArrayList 값을 가져 오는 방법은 무엇입니까? 내 샘플 응용 프로그램에서

public class Sample 
{ 

public ArrayList method1() 
{ 
ArrayList al =new ArrayList(); 
al.add("one"); 
al.add("TWO"); 
} 

그리고 플렉스 측의

은 모두가 완벽하게 완료 ... 블레이즈 DS 연결을 연결하고 내 MXML file code

  public var userService:Sample = new Sample(); 
      protected function init_Call(event:FlexEvent):void 
      { 
       var rpcSearchResult:AsyncToken = userService.method1(); 
       rpcSearchResult.addResponder(new mx.rpc.Responder(success, failure)); 
      } 
      [Bindable]public var ac:ArrayCollection = new ArrayCollection(); 

      public function success(event:ResultEvent):void 
      { 
       ac=event.result as ArrayCollection; 
       Alert.show("Result : "+ac.getItemAt(0,0)); 

      } 
      public function failure(event:FaultEvent):void 
      { 

       Alert.show("This is Fault Event"); 
      } 

입니다 ... ...

<s:DataGrid id="dataGrid" left="12" right="12" top="49" bottom="54" horizontalCenter="0" 
       requestedRowCount="4" verticalCenter="-3" dataProvider="{ac}"> 
    <s:columns> 
     <s:ArrayList> 
     <s:GridColumn dataField="one" headerText="FirstValue"></s:GridColumn> 
     <s:GridColumn dataField="two" headerText="SecondValue"></s:GridColumn> 

     </s:ArrayList> 
    </s:columns> 

</s:DataGrid> 

하지만 데이터 그리드 만의 ResultEvent 기능 경보 쇼 '하나'에 어떤 값을 얻을하지 않습니다는 '두'공동 값 바르게.

답변

0

Datagrid에 할당 된 변수에 문제가있을 것으로 생각됩니다. [바인딩]으로 설정 "교류"를 시도하거나이 다음에 대한 함수의 성공을 바꿉니다

public function success(event:ResultEvent):void 
     { 
      datagrid.dataProvider = event.result; 
     } 

을 나는 그것이 도움이 될 것입니다 바랍니다.