Just bind the ListView to a collection of Group objects (where Group is the class you define, and Group1, Group2, and Group3 are such Group objects).
In addition to group level properties (for example, Title), the group contains a collection of Item objects.
In a ListView data item, use a different ListView to display the Item items for each group.
Be careful, nesting GridViews will result in nested ScrollViewers. You want to remove ScrollViewer from internal GridViews by changing their control pattern.
source share