如何使用枚举数据绑定listview分组项目

时间:2016-04-28 05:37:58

标签: c# wpf listview data-binding enums

所以现在我已经将数据手动添加到我的列表视图中但是决定在mssql中创建一个数据库而不是

甚至可以使用枚举扩展来显示组描述,还是有其他方式可以做到

    public static class EnumExtensions
{

    public static string DisplayName(this Enum value)
    {
        FieldInfo field = value.GetType().GetField(value.ToString());

        EnumDisplayNameAttribute attribute
                = Attribute.GetCustomAttribute(field, typeof(EnumDisplayNameAttribute))
                    as EnumDisplayNameAttribute;

        return attribute == null ? value.ToString() : attribute.DisplayName;
    }
}

public class EnumDisplayNameAttribute : Attribute
{
    private string _displayName;
    public string DisplayName
    {
        get { return _displayName; }
        set { _displayName = value; }
    }
}

public enum Mærke
{
[EnumDisplayName(DisplayName = "Alfa Romeo                                                                                                                4x98 5x98 4x108 5x108 5x110")]
    Alfa_Romeo,
}
    public class biler
{
    public string billed { get; set; }

    public string Model { get; set; }

    public string type { get; set; }

    public string Årgang { get; set; }

    public string Krydsmål { get; set; }

    public double ET { get; set; }

    public double centerhul { get; set; }

    public string bolter { get; set; }

    public string hjul { get; set; }

    public string mærke { get; set; }

    public string mål { get; set; }

}

 List<biler> items = new List<biler>();
items.Add(new biler() { billed = "img/Biler/Alfa.png", Model = "33", Årgang = "83-94", Krydsmål = "4x98", ET = 40, centerhul = 58.1, bolter = "M12x1.25 Hex19", mærke = Mærke.Alfa_Romeo.DisplayName() });
            hjuldata.ItemsSource = items;



        CollectionView view = (CollectionView)CollectionViewSource.GetDefaultView(hjuldata.ItemsSource);
        PropertyGroupDescription groupDescription = new PropertyGroupDescription("mærke");
        view.GroupDescriptions.Add(groupDescription);

0 个答案:

没有答案