The DataGridView control provides a powerful
and easiest way to display our data in tabular format with entity framework 5. We can use DataGridView
as we want to, like we can use it to simply show our read-only data or we can
use it with editable views of our data, in c# programming. Access data from the database and perform binding steps to show them in datagridview.
To do binding on DataGridView with our data is
straight-forward and in many cases it is as simple as setting the DataSource
property of DataGridView. As DataGridView supports standard binding model, so it
will bind to some instances of c# classes like DataSet, DataTable, BindingList and
BindingSource etc.
The first way to bind our datagridview to
table of database is:
studentDataGridView.DataSource = "DataSet
Name";
studentDataGridView.DataMember = "Table Name";
Let’s suppose we have a c# class Student having
some properties like following:
public class Student
{
public int Id { get; set; }
public string Name { get; set; }
public string RollNo { get; set; }
public string Branch { get; set; }
}
public class Student
{
public int Id { get; set; }
public string Name { get; set; }
public string RollNo { get; set; }
public string Branch { get; set; }
}
Now we will bind datagridview to list of
students as:
DataContext dc = new DataContext();
var studentList = dc.Student;
studentDataGridView.DataSource = studentList.ToList();
DataContext dc = new DataContext();
var studentList = dc.Student;
studentDataGridView.DataSource = studentList.ToList();
Here ToList() method is used to convert our DbSet<Student> type of data to List<Student> type of data, because DbSet<> type of data cant be directly bind with any control.
Now if we want to bind only Name and Branch
column of Student class then:
DataContext dc = new DataContext();
var studentList = from d in dc.Student
select new
{
d.Name,
d.Branch
};
studentDataGridView.DataSource = studentList.ToList();
DataContext dc = new DataContext();
var studentList = from d in dc.Student
select new
{
d.Name,
d.Branch
};
studentDataGridView.DataSource = studentList.ToList();
We can bind our desired columns to
datagridview as we have done in above code. DataGridView doesn’t have any mean
where is data come from, so we can use conditions in our queries also.
See Also: DataGridView binding with DataSet
See Also: DataGridView binding with DataSet