I have two classes (shown below) and I think the AdvancedDataGrid can display it properly. Basically there can be EmployeeGroups inside of EmployeeGroups..nested as much as you want. Each group also contains Employees. I'd like to display these columns:Name (of group/employee) | Dept (of employee) any help to get started would be great. [Bindable] public class Employee { public var name:String; public var dept:String; public function Employee(name:String, dept:String):void { this.name = name; this.dept = dept; } } [Bindable] public class EmployeeGroup { public var name:String; public var parent:EmployeeGroup; public var employees:ArrayCollection; public var groups:ArrayCollection; public function EmployeeGroup(name:String, parent:EmployeeGroup=null) { this.name = name; this.parent = parent; employees = new ArrayCollection(); groups = new ArrayCollection(); } } Here is some sample data: var group1:EmployeeGroup = new EmployeeGroup("Group 1"); var group11:EmployeeGroup = new EmployeeGroup("Group 1.1"); var group2:EmployeeGroup = new EmployeeGroup("Group 2"); var emp1:Employee = new Employee("Bob", "IT Developer"); var emp2:Employee = new Employee("Bill", "IT Developer"); var emp3:Employee = new Employee("Jim", "IT Admin"); var emp4:Employee = new Employee("Todd", "IT Admin"); var emp5:Employee = new Employee("Bryan", "Sales"); var emp6:Employee = new Employee("James", "Sales"); group1.employees.addItem(emp1); group1.employees.addItem(emp2); group11.employees.addItem(emp3); group11.employees.addItem(emp4); group2.employees.addItem(emp5); group2.employees.addItem(emp6); // configure subgroups group1.groups.addItem(group11); group11.parent = group1; groups = new ArrayCollection(); groups.addItem(group1); groups.addItem(group2); The output in the tree would look something like: Name | Department Group 1 Bob | IT Developer Bill | IT Developer Group 1.1 | Jim | IT Admin Todd | IT Admin Group 2 Bryan | Sales James | Sales
I've tried doing this so far to setup the AdvancedDataGrid: groupColl = new GroupingCollection();groupColl.source = groups;var gfield:GroupingField = new GroupingField("name");var grouping:Grouping = new Grouping();grouping.fields = [gfield];groupColl.grouping = grouping;groupColl.refresh();adg.dataProvider = groupColl;This just gives me: Name | Dept Group 1 Group 1 Group 2 Group 2 Any help would be super!