주제가 꽤 많이 묻습니다. 나는 구부리기위한 초보자입니다.이 예제와 비슷한 것을하려고 시도하고 있습니다. http://livedocs.adobe.com/flex/3/html/help.html?content=advdatagrid_10.html. HierarchicalData없이이 작업을 수행하려면 어떻게해야합니까?flex에서 HierarchicalData를 사용하지 않고 AdvancedDataGrid의 행을 확장 할 수 있습니까?
답변
GroupingCollection 옵션을 사용할 수도 있습니다. 기본적으로 이러한 항목의 공통 속성을 기반으로 항목을 그룹화합니다. Flex 4를 사용중인 경우 GroupingCollection2를 사용하면 몇 가지 성능이 향상됩니다.
<mx:AdvancedDataGrid id="adg" initialize="{gc.refresh()}"
width="100%" height="100%">
<mx:dataProvider>
<mx:GroupingCollection id="gc">
<mx:Grouping>
<mx:GroupingField name="type" />
</mx:Grouping>
<mx:source>
<s:ArrayCollection>
<fx:Object name="Shaggy" type="dog" />
<fx:Object name="Scooby" type="human" />
<fx:Object name="Fred" type="human" />
<fx:Object name="Thelma" type="human" />
<fx:Object name="Scrappy" type="dog" />
</s:ArrayCollection>
</mx:source>
</mx:GroupingCollection>
</mx:dataProvider>
<mx:columns>
<mx:AdvancedDataGridColumn dataField="name" headerText="Name"/>
</mx:columns>
</mx:AdvancedDataGrid>
초기화 할 때마다 그리고 데이터 공급자가 업데이트 될 때마다 gc.refresh()를 호출하는 것을 잊지 마십시오.
public function set theDataProvider(ac:ArrayCollection):void{
_theDataProvider = ac;
gc.refresh();
}
이 동작을 위해 HierarchicalData 개체를 사용해야합니다. 하나를 사용하여 문제는 무엇입니까? ArrayCollection을 HierarchicalData 객체의 생성자에 전달한 다음 childrenField 속성을 설정하고 잘 수행 할 수 있어야합니다. 원래 배열 컬렉션에서 작업해야하는 경우 HierarchicalData 소스를 사용하여 ArrayCollection을 다시 가져 오거나 별도의 참조를 저장할 수 있습니다. HierarchicalData는 무거운 가중치 객체가 아니며 계층 구조를 나타내는 데 필요한 항목을 추가하기 만합니다. 우리의 경우 확장 된 행은 원본 배열 컬렉션 행과 동일한 데이터를 갖기를 원했기 때문에 객체의 children 속성을 객체 자체 만 포함하는 컬렉션을 갖도록 설정했습니다. 이렇게하면 행이 원본 데이터로 확장 될 때 행 확장으로 전달됩니다. 이 같은 것은 DTO/Value 객체에 있습니다. public var children : ArrayCollection;
children = new ArrayCollection ([{parent : this}]);
이 속성은 새 개체를 설정하도록 설정되어 있습니다.이 개체는 주위에 개체를 래핑하지 않고 속성을 할당하지 않고 방금 통과 한 다음 속성에 할당하면 확장 할 때 재귀 적으로 확장하려고하므로 아이도. 그런 다음 set 데이터 함수의 실제 렌더러에서 부모 속성을 확인하고 렌더러의 데이터 속성을 드롭 된 데이터의 부모로 설정합니다. 이렇게하면 모든 것이 렌더러 내의 데이터 속성에 바인딩 될 수 있으며 모두 잘.
이 정보가 도움이되는지 아니면 다른 목표를 달성하려는 경우 알려주십시오.
- 1. 마지막 키워드를 사용하지 않고 클래스를 확장 할 수 없게하려면 어떻게해야합니까?
- 2. Activity 클래스를 사용하지 않고 연락처를 검색 할 수 있습니까?
- 3. 확장 기능을 작성하지 않고 FlexBuilder를 스크립팅 할 수 있습니까?
- 4. 확장 관리자를 사용하지 않고 VS2010 확장을 제거하십시오.
- 5. 어떻게 Flex에서 드래그를 "수락"할 수 있습니까?
- 6. Adobe Flex에서 #define을 수행 할 수 있습니까?
- 7. Flex에서 VBox를 흐리게 처리 할 수 있습니까?
- 8. Flex에서 xml 스키마를 사용하지 않고 dispatchEvents를 호출하는 다른 방법
- 9. 함수를 사용하지 않고 const struct를 초기화 할 수 있습니까?
- 10. WSDD를 사용하지 않고 Axis로 SOAP 서버를 배포 할 수 있습니까?
- 11. 관계를 사용하지 않고 doctrine ORM의 테이블을 조인 할 수 있습니까?
- 12. eval을 사용하지 않고 json 객체를 반복 할 수 있습니까?
- 13. regexes는 그룹을 사용하지 않고 부분 문자열을 캡처 할 수 있습니까?
- 14. Perl 형식을 사용하지 않고 어떻게 열을 포맷 할 수 있습니까?
- 15. AS3에서 XML을 사용하지 않고 폴더의 모든 파일을로드 할 수 있습니까?
- 16. KeyContainerName을 사용하지 않고 XML 문서에 서명 할 수 있습니까?
- 17. NSTimer를 사용하지 않고 10 초마다 방법을 트리거 할 수 있습니까?
- 18. jQuery를 사용하지 않고 입력별로 어떻게 입력 할 수 있습니까?
- 19. CreateSQLQuery를 사용하지 않고 NHibernate에서이를 수행 할 수 있습니까?
- 20. abort()를 사용하지 않고 어떻게 assert() 할 수 있습니까?
- 21. 레일에서 self.attribute =를 사용하지 않고 어떻게 할당 할 수 있습니까?
- 22. UIImagePickerController를 사용하지 않고 비디오를 녹화 할 수 있습니까?
- 23. 변수를 사용하지 않고 튜플을 언팩 할 수 있습니까?
- 24. ant-contrib을 사용하지 않고 ant에서 파일을 반복 할 수 있습니까?
- 25. android 3.0에서 조각을 사용하지 않고 탭을 표시 할 수 있습니까?
- 26. LiveCycle을 사용하지 않고 휴대용 RIA를 구축 할 수 있습니까?
- 27. JavaScript를 완전히 사용하지 않고 AJAX를 사용 중지 할 수 있습니까?
- 28. 따옴표를 사용하지 않고 문자열을 쿼리에 어떻게 배치 할 수 있습니까?
- 29. 양식을 사용하지 않고 URL에 POST 할 수 있습니까?
- 30. .htaccess를 사용하지 않고 이미지를 어떻게 gzip 할 수 있습니까?
몇 시간 뒤죽박죽으로 마침내 나는 그걸 처리 할 수있었습니다. 고맙습니다! – PBG