// 从这个 Admin 类获取数据:
public static IQueryable<Student> GetStudents()
{
DojoDBDataContext conn = new DojoDBDataContext();
var query =
from s in conn.Students
join b in conn.Belts on s.BeltID equals b.ID
orderby s.LastName ascending
select s;
return query;
}
// 在我的表单上:
BindingSource bs = new BindingSource();
private void fillStudentGrid()
{
bs.DataSource = Admin.GetStudents();
dgViewStudents.DataSource = bs;
dgViewStudents.Columns.Remove("ID");
}
这段代码本身没有问题,但是我不想删除超过20列的数据,我只想添加一些需要的列。此外,给列标题命名也是一个额外的好处。但是,我发现添加方法对我来说并不起作用:
private void fillStudentGrid()
{
bs.DataSource = Admin.GetStudents();
dgViewStudents.AutoGenerateColumns = false;
dgViewStudents.DataSource = bs;
dgViewStudents.Columns.Add("ID", "ID Number");
}
我得到了适当数量的行,列标题也正确设置了...但是这些行被填充了空白数据。