2

我是.net 初学者。我想刷新 datagridview 中的所有值。

 DataSet ds = new DataSet();
 ds.ReadXml(@"..\..\stock.xml"); /* XML file */
 dgvMain.DataSource = ds.Tables[0];

我正在尝试下面的代码来刷新(不工作

按钮点击

dgvMain.DataSource = null;
dgvMain.DataSource = ds.Tables[0];

我想我在上面的代码中遗漏了一些东西。

我什至尝试过dgvMain.Refresh();(我对此一无所知。在智能感知中看到它)

我尝试的其他代码是:(不起作用

dgvMain.Rows.Clear(); /*ERROR: Cannot clear this list.*/

dgvMain.EndEdit(); 不用找了

this.BindingContext[this.dgvMain.DataSource].EndCurrentEdit(); this.dgvMain.Refresh(); this.dgvMain.Parent.Refresh(); 不用找了

请协助
提前致谢。

4

2 回答 2

1

正如您在其中一条评论中注意到的那样,您使用一些后端应用程序更改了 xml 文件。因此,每次单击按钮时,都需要重新加载 xml 文件:

**onButtonClick**

ds.Clear();
ds.ReadXml(@"..\..\stock.xml");
于 2012-10-08T10:14:08.533 回答
0

我认为你必须调用 dgvMain.DataBind(); 为了以您描述的新方式绑定数据。如果这不起作用,那么我会将数据绑定到一个空集,然后调用 DataBind();

于 2012-10-08T09:59:51.740 回答