2

私は .net の初心者です。datagridview のすべての値を更新したいと考えています。

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

以下のコードを更新しようとしています(動作していません)

onButtonClick

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

As you notice in one of your comments, you changed xml file with some backend application. So, each time when you click on button, you need to reload xml file:

**onButtonClick**

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

dgvMain.DataBind(); を呼び出す必要があると思います。あなたが説明した新しい方法でデータをバインドするために。それがうまくいかない場合は、データを空のセットにバインドしてから DataBind(); を呼び出します。

于 2012-10-08T09:59:51.740 に答える