UltraGrid添加BindingList <myclass>并将属性名称映射到列名</myclass>

时间:2013-04-26 13:51:50

标签: bindinglist ultragrid

是否可以将我的类的属性名称映射到UltraGrid控件的列名?

MyClass例如是用户类:

class User
   {
      public int Id { get; set; }
      public string Name { get; set; }
   }

BindingList<User> myList = new BindingList<User>();

private void Form1_Load(object sender, EventArgs e)
      {
          this.ultraGrid1.DataSource = myList;
      }

这样可行,但是colum名称将被我的类的属性名称覆盖。 有没有办法将属性名称映射到列名称?

我通过使用DataBindings尝试了这一点,但这不起作用。

1 个答案:

答案 0 :(得分:3)

为什么是,是的,有!

System.ComponentModel命名空间中的DisplayName属性:

class User
{
    [DisplayName("Identifier")]
    public int Id { get; set; }
    [DisplayName("First Name")]
    public string Name { get; set; }
}

您还可以在InitializeLayout事件中执行以下操作:

 e.Layout.Bands(0).Column("Name").Header.Caption = "First Name";