1
Могу ли я использовать LINQ для группировки в ListBox? У меня есть свойствоListBox grouping и LINQ
public IEnumerable<IGrouping<string, Rout>> GroupedTypeRouts
{
get { return Routs.GroupBy(x => x.Transport); }
}
И я хочу показать это в ListBox по группам.
Обновлено. Я попробовал этот
private CollectionViewSource groupedTypeRoutsView;
public CollectionViewSource GroupedTypeRoutsView
{
get
{
if (groupedTypeRoutsView == null)
{
groupedTypeRoutsView = new CollectionViewSource();
groupedTypeRoutsView.IsSourceGrouped = true;
groupedTypeRoutsView.Source = GroupedTypeRouts;
}
return groupedTypeRoutsView;
}
}
public IEnumerable<IGrouping<string, Rout>> GroupedTypeRouts
{
get { return Routs.GroupBy(x => x.Transport); }
}
Но я не знаю, как показать это в ListBox
<ListView Grid.Row="2"
Grid.ColumnSpan="9"
ItemsSource="{Binding Source=GroupedTypeRoutsView}">
<ListView.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<Image Source="{Binding Key, Converter={StaticResource TransportToImageConverter}}"></Image>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</ListView.GroupStyle>
</ListView>
Я получаю GroupedTypeRoutsView вместо значения и группы
Это не будет работать из коробки. Таким образом, короткий ответ - Нет. Но ListBox поддерживает Группировку негруппированных данных из коробки. Вы найдете руководства, где это будет разрешено (http://www.wpf-tutorial.com/listview-control/listview-grouping/). Я не вижу никакой необходимости в LINQ здесь. – thmshd
удалить Источник = .. –
Так что я ничего не получаю –