gpt4 book ai didi

c# - 强制 ListCollectionView 中的一个组成为第一个

转载 作者:行者123 更新时间:2023-11-30 16:23:20 25 4
gpt4 key购买 nike

我正在使用 ListCollectionView 作为选项卡控件的数据上下文。我已经基于枚举向其中添加了一个 GroupDescription,我希望一个特定的组显示为选项卡控件中的第一个选项卡,但现在它总是放在底部。

Profiles = new ListCollectionView(_profiles);
Profiles.GroupDescriptions.Add(new PropertyGroupDescription("ProfileType"));
Profiles.SortDescriptions.Add(new SortDescription("ProfileName", ListSortDirection.Ascending));

_profiles 是我的个人资料 ViewModels 的 ObservableCollection。

我的枚举看起来像:

public enum ProfileTypeEnum
{
CurrentSettings,
CustomSettings,
DefaultSettings
}

那么我怎样才能强制 CurrentSettings 组总是第一个呢?

最佳答案

尝试使用辅助属性:

public class Item
{
public ProfileTypeEnum ProfileType { get; set; }
public string ProfileName { get; set; }
public int ProfileTypeValue { get { return (int)ProfileType; } }
}

为枚举赋值:

public enum ProfileTypeEnum
{
CurrentSettings=0,
CustomSettings=1,
DefaultSettings=2
}

并添加排序说明:

Profiles.SortDescriptions.Add(new SortDescription("ProfileTypeValue", ListSortDirection.Ascending));
Profiles.SortDescriptions.Add(new SortDescription("ProfileName", ListSortDirection.Ascending));

通过这种方式,您可以使用枚举的值来更改顺序并强制将一个放在最前面。

关于c# - 强制 ListCollectionView 中的一个组成为第一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11670248/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com