我的表單中有一個GeidView,我有一個按鈕,它向GridView添加新記錄,方法是向Datatable添加一行,然後將此DataTable作爲GridContol的數據源。向DataTable添加新行
問題是,當我添加一個新的記錄顯示在GridView中,但是當我添加另一個rocord時,它不顯示在GridView中,GridView始終包含我添加到DataTable的第一行!
那麼請你能幫我解決這個問題嗎?
這是源代碼:
private DataTable recompensesTable;
private void AjoutLivre_Load(object sender, EventArgs e)
{
recompensesTable = MakeRecomponsesTable();
recompenseGridControl.DataSource = recompensesTable;
}
private DataTable MakeRecomponsesTable()
{
DataTable recmpensesTable = new DataTable("Recompenses");
var anneeColumn = new DataColumn();
anneeColumn.DataType = Type.GetType("System.Int32");
anneeColumn.ColumnName = "Année";
recmpensesTable.Columns.Add(anneeColumn);
var prixLiteraireColumn = new DataColumn();
prixLiteraireColumn.DataType = Type.GetType("System.String");
prixLiteraireColumn.ColumnName = "Prix Litéraire";
recmpensesTable.Columns.Add(prixLiteraireColumn);
return recmpensesTable;
}
private void nouveauRecompense_Click(object sender, EventArgs e)
{
DataRow row = recompensesTable.NewRow();
row[0] = ajoutRecompense.KeyWordAnnee;
row[1] = ajoutRecompense.KeyWordPrixLiteraire;
recompensesTable.Rows.Add(row);
recompenseGridControl.DataSource = recompensesTable;
}
:: +1對於很好的解釋。 :) –
我認爲是爲Asp.Net不是嗎? '因爲我正在使用WinForm應用程序 – user1726655
winforms不使用gridview。它被稱爲DataGridView。你應該在你的問題中指出。在你的'_click'事件中添加相關信息 – codingbiz