积极答复者
Ado.net Entity 绑定DataGridView 的问题

问题
-
代码如下:
private void Form1_Load(object sender, EventArgs e)
{
var result = from o in northwindEntity.Orders
select new { o.OrderID,o.Customers.CompanyName,o.OrderDate,o.Freight,o.Employees.FirstName,o.Employees.LastName};
this.dataGridView1.DataSource = result;
}
问题:
绑定DataGridView后,发现DataGridView变为只读了。检查后发现,原来与DataGridView绑定的数据为只读的。
我知道这是多表连接查询后造成的,不过我需要这样的连接数据用于显示。
现在,我想编辑DataGridView,也就是说我不要DataGridView只读,怎么办呀?
谢谢!
答案
全部回复
-
还是不行呀,我使用后,代码如下:
private void Form1_Load(object sender, EventArgs e)
{
var result = from o in northwindEntity.Orders
select new { o.OrderID,o.Customers.CompanyName,o.OrderDate,o.Freight,o.Employees.FirstName,o.Employees.LastName};
this.bindingSource1.DataSource = result;
this.dataGridView1.DataSource = this.bindingSource1;
}
datagridview仍然为只读。
请帮忙! -
private void btnUpdate_Click(object sender, EventArgs e)
{
var id = Convert.ToInt32(this.dataGridView1.Rows[this.dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString().Trim());
var freight = Convert.ToDecimal(32.3801);
var order = northwindEntity.Orders.First(o => o.OrderID == id);
order.CustomersReference.Load();
order.EmployeesReference.Load();
order.Freight = freight;
order.Customers.ContactName = "Paul Henriot 2";
order.Employees.FirstName = "Steven 2";northwindEntity.SaveChanges();
}
这样更新没问题,就是无法使datagridview可编辑。
请版主帮帮忙,或者把上面你的方法说详细一点,不胜感激!