2012-02-01 5 views
0

У меня есть набор элементов, и каждый элемент находится в некоторых группах. Я показываю коллекцию в WPF Listview и хочу группировать группы, но это невозможно, потому что у меня есть IEnumerable :-). И строка должна появиться не только один раз.Группировка групп в ListView

Есть ли у кого-нибудь идеи, как я могу решить эту проблему?

ответ

0

Вы можете использовать DataTemplate для внутреннего элемента и внутри внутреннего шаблона данных другой Listview может использоваться для отображения этих элементов группы.

+0

Но если я сортировки «Main» GridView на подвиды не отсортирован? Сложно ли сравнивать их потом? – user1182267

0

Лучше использовать TreeView и HierarchicalDataTemplate, чтобы показать уровни группировки в вашей структуре данных.

Я не знаю точно, как выглядит ваша структура данных. Если вы сплющенные данные, которые вы, возможно, потребуется изменить этот вид структуры

public class Item 
{ 
    public string Group { get; set; } // A prop you want the grouping on 
    public string AnotherItemProp { get; set; } 
} 

public IEnumerable<Item> Items // used as your list source somewhere 

данных Для этого:

public class Group 
{ 
    public string AnotherGroupProp { get; set; } // grouping value from flattened 
    public IEnumerable<Item> Items { get; set; } 
} 

public class Item 
{ 
    public string AnotherItemProp { get; set; } 
} 

public IEnumerable<Group> Groups { get; set; } // Used by treeview 
+0

Но я использую ListView и как просмотр GridView в нем. Thats necassary из-за столбцов, сортировки и так далее. Древовидный вариант для меня не является ... :-( Любой другой подход? – user1182267

Смежные вопросы