目前我DataGridView
在我的应用程序中有一个我从我的 Linq-to-SQL 类中填充的,像这样......
/// <summary>
/// Delegate to update datagrid, fixes threading issue
/// </summary>
private void updateInfo()
{
// Linq to datagridview; display all
var query = from n in dbh.Items select n;
itemDataGridView.DataSource = query.ToList();
}
所以问题是每次我添加新信息并运行此刷新时,表格的焦点都会改变,这意味着如果我在一行上,它会将我切换到另一行。并且有一个与行更改相关的事件,因此这会导致该事件在列表不断刷新时运行。
我不记得,但我记得在切换到 Linq-to-SQL 之前,DataGridView
有一个已TableAdapter
形成的,而不是更改数据库中的数据,您只需使用它插入TableAdapter
,它会以正确的方式自动刷新DataGridView
。
所以我想知道是否有其他方法我应该对每个平滑刷新执行此操作?