在WPF中对列表框进行排序时,如何将PropertyGroupDescription与相关的表列一起使用

本文关键字:PropertyGroupDescription 一起 列表 WPF 排序 | 更新日期: 2023-09-27 18:22:19

我想用相关的表属性名称lightType对列表进行分组。因此,我尝试了PropertyGroupDescription"RelatedPhantoms[0].lightType.Name",但它似乎找不到该属性。我该怎么解决这个问题?

            ICollectionView view = CollectionViewSource.GetDefaultView(MainLightList.ItemsSource);
            view.SortDescriptions.Add(new SortDescription("RelatedPhantoms[0].lightType.Name", ListSortDirection.Ascending));
            view.SortDescriptions.Add(new SortDescription("lightSeries.Name", ListSortDirection.Ascending));

            view.GroupDescriptions.Add(new PropertyGroupDescription("RelatedPhantoms[0].lightType.Name"));
            view.GroupDescriptions.Add(new PropertyGroupDescription("lightSeries.Name"));

以下是支持这组光的数据

public class LightHead : CoreEntity
{
    public LightHead()
    {
        this.RelatedPhantoms = new List<LightHead>();
        this.OtherRelatedPhantoms = new List<LightHead>();
    }
    public LightSeries lightSeries { get; set; }
       public Nullable<int> LightSeriesId { get; set; }
    public virtual ICollection<LightHead> RelatedPhantoms { get; set; }
    public virtual ICollection<LightHead> OtherRelatedPhantoms { get; set; }

}
}

public class LightSeries: CoreModelEntity
{
     public string Name { get; set; }
     public ICollection<LightHead> lightHeads { get; set; }
     public LightType lightType { get; set; }
     public Nullable<int> LightTypeId { get; set; }
     public LightSeries() { }
     public LightSeries(string name) 
    {
        this.Name = name;
    }
}

在WPF中对列表框进行排序时,如何将PropertyGroupDescription与相关的表列一起使用

RelatedPhantomsLightHead的集合,lightTypeLightSeries 的属性

所以"RelatedPhantoms[0].lightType.Name"可能不起的作用

因为LightHead类包含具有属性lightType 的类型LightSerieslightSeries属性

因此您可以将属性描述更改为

"RelatedPhantoms[0].lightSeries.lightType.Name"

以上是基于查看发布的代码后的一些假设。您可以根据需要进行同样的调整。

同样值得验证的是,RelatedPhantoms集合的类型为IList<T>,以支持索引器

还要验证RelatedPhantoms集合是否应该是LightHeadLightSeries类型,因为LightSeries中确实存在lightHeads集合,这让我想到了这些类

之间的关系
相关文章:
  • 没有找到相关文章