0
我想将SQL数据库中的表绑定到DataGridView控件。我想这样做是为了当用户在DataGridView中输入新的一行数据时,记录会自动添加到数据库中。这是我当前的尝试......如何将SQL数据绑定到.NET DataGridView?
BOMClassesDataContext DB = new BOMClassesDataContext();
Form_Load()
{
var mfrs = from m in DB.Manufacturers
select m;
BindingSource bs = new BindingSource();
bs.DataSource = mfrs;
dataGridView1.DataSource = bs;
}
dataGridView_CellValueChanged()
{
try
{
DB.SubmitChanges()
}
catch(Exception Ex)
{
MessageBox.Show(Ex.Message);
}
}
如果我点击底部的空行,它在表上的ID(身份)柱,以“0”自动填充的,而不是下一个未使用的价值。如果我手动将该值更改为下一个可用的值,那么它会添加新记录,但如果将它保留为0,则不会执行任何操作。我怎样才能解决这个问题?在我的LINQ to SQL类中,表的ID列的AutoGenerate属性设置为true。
好的,只要我手动输入ID(标识列),就可以工作。有没有办法让它自动增加ID列? ID列设置为身份。 – PICyourBrain 2010-04-08 20:24:18
同样在什么事件最好用来触发SubmitChanges方法? CellValueChanged? – PICyourBrain 2010-04-08 20:27:53
@Jordan:在您的Linq-To-Sql设计器中,将ID列的“自动生成的属性”值更改为True。将其从数据网格中隐藏,除非用户有理由看到它。 – 2010-04-08 20:29:48