我有DataGridView
绑定到LINQ to SQL查询表达式。我希望它可以编辑更新,但对于插入,我希望用户在网格下面使用单独的控件(文本框,日期选择器等 - 当前没有绑定任何东西)。我有一个“添加”按钮,根据控件中的值创建linq to sql实体类的对象,然后调用InsertOnSubmit()
。当我稍后调用SubmitChanges()
时,网格中的任何更新以及添加的任何对象都会正确保存到数据库中。
我的问题是,在调用SubmitChanges()
之前或之后,没有任何新对象添加到网格中。我希望新对象一旦创建就添加到网格中。另外,我只希望网格下面的控件用于插入新记录,而不是编辑现有记录,因此我认为它们不应该绑定到数据源...实现这一目标的最佳方法是什么?
我确实尝试过简单地为网格重新设置DataSource
(即dataGridView.DataSource = db.<TableName>
,这是有效的,但是很笨拙,因为它再次滚动到网格顶部 - 我确定更好方法存在。
(请原谅n00b问题,我对所有这些内容都很新。网络内容:P)
答案 0 :(得分:1)
要尝试的第一件事是GetNewBindingList(),但是这个帖子:“Linq-SQL canonical editable datagridview sample code”对其他场景有一些想法。