WPF ListVIew分组名称

本文关键字:ListVIew WPF | 更新日期: 2023-09-27 18:01:50

我是WPF的新手,我正在使用列表视图和分组。

我想要实现的是按特定类型分组项目,但在ListView标题上显示不同的名称。这将允许我有两个不同的组类型具有相同的名称

这是我到目前为止的代码

   //.....Populate dummy items in a loop
   items.Add(new Beds() { Name = "Bed " + counter, Type = i.ToString() ,  TypeName = "Test Name" });
   //....
   lvBeds.ItemsSource = items;
   CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(lvBeds.Items);
   PropertyGroupDescription groupDescription = new PropertyGroupDescription("Type");
   view.GroupDescriptions.Add(groupDescription);

XAML

   <ListView.GroupStyle>
            <GroupStyle>
                <GroupStyle.HeaderTemplate>
                    <DataTemplate>
                        <TextBlock FontWeight="Bold" FontSize="20" Text="{Binding TypeName}" Background="Gray" Height="35"/>
                    </DataTemplate>
                </GroupStyle.HeaderTemplate>
            </GroupStyle>
        </ListView.GroupStyle>
    </ListView>

我想映射ListView Header TextBlock Text到"TypeName",同时保持分组到"Type"。这可能吗?

编辑:我通过使用IValueConverter来处理绑定名称字符串的替换来解决这个问题。

如何在WPF绑定中替换StringFormat中的字符串

WPF ListVIew分组名称

回答我自己的问题

我通过使用IValueConverter来处理绑定名称字符串的替换来解决这个问题。

如何在WPF绑定中替换StringFormat中的字符串