2010-08-11 3 views
0

이 arrayCollection을 사용하여 Flex 3 Datagrid를 채 웁니다. 또한이 arrayCollection을 사용하여 이름 노드로 comboBox를 채우고 싶습니다.Flex 3 ArrayCollection을 사용하여 Datagrid와 ComboBox 둘 다 채우기

arrayCollection에서 두 번 나열된 이름이 있습니다. Datagrid에 두 개의 행이 있습니다.

ComboBox의 labelfield를 Name으로 설정하면 이름이 ComboBox 메뉴에 두 번 표시됩니다. 이 arrayCollection을 사용하고 각 Name을 comboBox에 한 번만 나열 할 수있는 방법이 있습니까?

이름에 대해 항상 다른 루프 및 배열 컬렉션을 만들 수 있지만 더 좋은 방법이 있는지 궁금합니다.

var i:uint; 
    for (i=0; i<myArray.length; i++){ 
     myDGArray = [ 
     {Name: myArray[i].Name, Subject: 'Math:', Pass: myArray[i].math_pass, Fail: myArray[i].math_fail}, 
     {Name: myArray[i].Name, Subject: 'Reading:', Pass: myArray[i].reading_pass, Fail: myArray[i].reading_fail} 
          ] 
       } 

myAC=new ArrayCollection(myDGArray); 

고맙습니다.

-Laxmidi

답변

1

나는 약간 혼란 스럽다. 코드 샘플을 기반으로 DataProvider에서 동일한 이름이 두 번 사용되므로 이름이 ComboBox에 두 번 표시됩니다.

dataProvider를 두 개의 개별 ListCollectionView 객체로 변환하고 각 객체마다 다른 필터링을 제공하고 각 객체별로 별도의 dataProviders로 사용할 수 있습니다.

는 사이비 코드에서이 내가 그것을 할 거라고 방법은 다음과 같습니다

public var comboBoxCollection : ListCollectionView = new ListCollectionView(myAC); 
public var dataGridCollection : ListCollectionView = new ListCollectionView(myAC); 

는 중복 된 이름을 가진 항목을 필터링 할 comboBoxCollection에 필터링을 적용합니다. More info on collection filtering in the docs.

+0

안녕하세요, www.Flextras.com, 답장을 보내 주셔서 감사합니다. CollectonView는 제가 찾고있는 것입니다. 나는 그것을 듣지 못했다. 조언과 링크에 감사드립니다. – Laxmidi

+0

ListCollectionView는 메모리가 나를 지원하면 ArrayCollection과 XMLListCollection의 부모입니다. – JeffryHouser

관련 문제