2011-02-01 2 views
0

DataGrid의 두 개의 다른 열에 두 개의 항목 렌더러가 있습니다. 둘 다 콤보 상자입니다. 내가 여기서하려고하는 것은 firxt 콤보 박스의 항목 선택을 기반으로 두 번째 콤보 상자의 dataprovider를 설정하는 것입니다. 하지만 어떻게 두 번째 itemrenderer가 첫 번째 항목에서 선택된 항목이 무엇인지 알 수 있습니까? 여기 다른 아이템 렌더러 (동일한 데이터 격자이지만 다른 열)를 기반으로 한 DataGrid 열의 한 아이템 렌더러에 대한 데이터 제공자를 어떻게 설정할 수 있습니까?

코드

<mx:DataGridColumn id="deptCol" headerText="Department" width="300"> 
<mx:itemRenderer> 
<mx:Component> 
    <mx:HBox width="100%" height="100%" horizontalAlign="center"> 
    <mx:ComboBox id="cmbBox1" dataProvider="{XML(data)[email protected]_description}" /> 
    </mx:HBox> 
</mx:Component> 
</mx:itemRenderer> 
</mx:DataGridColumn> 

<mx:DataGridColumn id="deptCol" headerText="Department" width="300"> 
<mx:itemRenderer> 
<mx:Component> 
    <mx:HBox width="100%" height="100%" horizontalAlign="center"> 
    <mx:ComboBox id="cmbBox2" dataProvider="{<some DataProvider Based on Selection of cmbBox1> ?? **HOW TO SET IT**}" /> 
    </mx:HBox> 
</mx:Component> 
</mx:itemRenderer> 
</mx:DataGridColumn> 

답변

0

입니다 그럼 나는 그것이 데이터 공급자로 간접 기술 ... 중고 XML 목록을 사용하여 작업을했고 "에 isSelected"라는 이름의 각 수준에서 다른 속성을 추가하고 0으로 디폴트 (첫 번째 콤보 상자에서 선택한 후 각 수준에 대해 고유 한 ID와 함께) 해당하는 "IsSelected"= 1 ... 한 항목 렌더러에 의해 변경된 다른 따라서 사용할 수있었습니다. 고유 한 ID를 사용하여 다른 ID를 식별하도록 지시하지 않아도됩니다.

관련 문제