2010-06-29 2 views
3

서버에서 들어오는 ArrayCollection 결과를 AS에서 동적으로 만든 DataGrid 에 바인딩하려고합니다.ActionScript를 통해 DataGrid에 데이터 바인딩

결과 데이터가 표에 표시되지 않습니다.

var dg:DataGrid = new DataGrid(); 
dg.width=650; 
dg.dataProvider=someArrayCollfromServer; 

은 내가 XML에서 일부 데이터를 기반 런타임으로 dgColumn를 추가하고 아래 정적 형식 정의는 동일합니다.

그러나 아래 코드와 동일한 코드를 사용하여 FlexGrid로 만들면 정상적으로 작동합니다.

<mx:DataGrid id="dg" width="100%" height="100%" dataProvider="{someArrayCollfromServer}"> 
<mx:columns> 
<mx:DataGridColumn dataField="Value" headerText="Value"/> 
<mx:DataGridColumn dataField="Code" headerText="Code" /> 
</mx:columns> 
</mx:DataGrid> 

잘 작동합니다. Flex 및 AS에서 DataGrid와 관련된 기능이나 구현이 다른가요?

여기에서 어떤 문제가 있습니까?

답변

2

dg.dataProvider=someArrayCollfromServer;은 변수 someArrayCollfromServer (아직 채워지지 않은 경우 null 일 수 있음)의 현재 값을 dataProvider에 할당합니다.

BindingUtils.bindProperty(dg, "dataProvider", this, "someArrayCollfromServer"); 

을 그리고 someArrayCollfromServer[Bindable]

+0

감사합니다 있는지 확인 : 데이터 바인딩을 얻으려면, 함께 그 라인을 교체합니다. 그 중 하나가 문제를 해결했습니다. –

관련 문제