我有datagridview名称data1,并将数据绑定到data1,当我点击列标题对数据进行排序时,会出现一些错误......这样的错误“DataGridView控件必须绑定到IBindingList对象待分类“。
这是代码示例..
SomeDataContext db = new SomeDataContext();
data1.DataSource = db.data.ToList();
private void data1_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
dataGridView1.Sort(dataGridView1.Columns[e.ColumnIndex],
ListSortDirection.Ascending);
}
任何解决方案的家伙?提前谢谢
答案 0 :(得分:5)
您需要使用SortableBindingList类:
SortableBindingList<person> persons = new SortableBindingList<person>();
persons.Add(new Person(1, "timvw", new DateTime(1980, 04, 30)));
persons.Add(new Person(2, "John Doe", DateTime.Now));
this.dataGridView1.AutoGenerateColumns = false;
this.ColumnId.DataPropertyName = "Id";
this.ColumnName.DataPropertyName = "Name";
this.ColumnBirthday.DataPropertyName = "Birthday";
this.dataGridView1.DataSource = persons;