日期:2014-05-18  浏览次数:20753 次

datagridview 绑定无显示
[code=C#][/code]  
class Song
  {
  private int Id { get; set; }
  private string Name { get; set; }
  private string Path { get; set; }
  public Song() { }
  public Song(int id, string name, string path)
  {
  this.Id = id;
  this.Name = name;
  this.Path = path;
  }
  }
//另外的一个类
  List<Song> song = new List<Song>();

  private void Form1_Load(object sender, EventArgs e)
  {
  song = new List<Song>{(new Song(1, "ewrw", "werewr"))};
  song = new List<Song> { (new Song(2, "oiu", "werewr")) };
  song = new List<Song> { (new Song(3, "hjghj", "werewr")) };
  dataGridView1.DataSource = song;
  }

datagridview控件没显示,不知道是什么原因。是编辑列中设计(name)名字和数据的DaTapropertyName 名字问题吗?

------解决方案--------------------
DataSource一般是=DataTable,不知道List song行不行。自己下断点测试测试。
------解决方案--------------------
同一楼,我一般都是绑定DataTable,不知道是否支持泛型
------解决方案--------------------
不用代码绑定,可以用手动点击去绑定方便的。
------解决方案--------------------
如果你是手动添加的列,要设置datapropertyname
------解决方案--------------------
同一楼,一般都是绑定DataTable 

你想这样绑的话,就不要用datasource 直接dataGridView1.rowcount+1 然后将你的内容填进去
------解决方案--------------------
datapropertyname名字必须和数据库表中的字段名相同
------解决方案--------------------
如果想绑定的话,最好绑定DataTable,
只想在DataGridView中显示数据的话,可以再DataGridView的Columns属性中增加需要的列,
在DataGridView的Rows属性中增加行。