Telerik gridview:如何在数据库更改后刷新网格视图

我在C#winform应用程序中使用radgridview来显示数据库中的数据。 我也在通过ADO.Net改变数据库。 问题是我更改数据库后,例如删除行或添加新行,更改不会出现在gridview中。
我还想提一下,我已经通过智能标签将数据库绑定到gridview,当我尝试创建新数据集并将其分配给radgridview1.datasource我遇到了大量错误。
关于如何强制radgridview重新加载datasource任何建议?

当datasource获得更改时,要刷新datagrid使用以下代码:

 this.radGridViewName.MasterTemplate.Refresh(null); 

这条线解决了我的问题:-)

您可以使用简单的灵魂来刷新网格中的数据:

 MyGrid.DataSource = null; MyGrid.DataSource = updatedData; 

好吧,我自己找到了答案。 虽然它只适用于dataGridView ,但不适用于dataListView
要删除记录并提交对数据库的更改:

 radGridView1.CurrentRow.Delete(); this.yourTableAdapter.Update(yourDataSet); 

另一方面,如果您添加了新记录并且想要改进列表:

 this.yourTableAdapter.Fill(yourDataSet.yourTabel); 

如果你知道如何使用dataListView做同样的dataListView ,我会很高兴听到。

这是一个教程 ,以一步一步的方式解释如何绑定网格。 一旦绑定,引入底层源的更改将自动反映,并且在更新TableAdapter后,RadGridView中的更改将在DataTable中更新。

这个解决方案类似于Alexander的:

 List t = radGridView.ItemsSource as List; radGridView.ItemsSource = null; radGridView.ItemsSource = t; 

ClassOfDataRow是用于在网格中存储一行数据的类, radGridViewradGridView的名称。

数据集具有clear函数,可以在将新数据传递给数据集之前调用该函数:

 Resultset.Clear(); DataAdapter.fill(Resultset); Radgridview.datasource=Resultset;