2013-10-26 24 views
0

這是情況。DataGridView選擇,但不會更新或刪除

我在訪問一個數據庫,我遷移到SQL Server。從Visual Studio 2012(C#)開始,我創建了一個名爲「stanleylabs \ sqlexpress.teccartHoraire.dbo」的數據連接。我有很多表和查詢等。然後我創建了幾個DataGridViews。例如,我使用包含教師名單的表格創建了一個DataGridView,並帶有名字和姓氏。 GridView被創建。我改變了列,所以他們將有真正的句子,而不是變量作爲他們的名字,我檢查了「激活選擇」,「激活修改」,「激活刪除」(請記住,我使用的是法語版的Visual Studio 2012,所以這些選項可能不會完全像這樣命名)。至今我還沒有加入任何代碼。

儘管已經檢查了所有這些選項,在DataGridView,而似乎讓我刪除行,並在表中添加數據,不能進行保存。當我執行時,我可以添加或刪除或修改,但說我離開應用程序或簡單的窗口,我所做的沒有在數據庫中更新。有人可以幫我解決這個問題嗎?我搜索解決方案,但找不到任何...

回答

0

你必須明確地更新/在一個特定的事件刪除記錄。當添加一個數據源到數據庫時,Visual Studio創建FormLoad事件的事件處理程序,並增加了一行代碼,加載所有表中的記錄從數據庫中,與此類似:

private void Form1_Load(object sender, EventArgs e) 
    { 
     // TODO: This line of code loads data into the 'yourDataSet.SalesOrderHeader' table. You can move, or remove it, as needed. 
     this.salesOrderHeaderTableAdapter.Fill(this.yourDataSet.SalesOrderHeader); 
    } 

你可以看到這個在編輯表單時按F7鍵。

,你需要做的是附加到某些事件,讓我們說的FormClosing和更新綁定到DataGridView表:

private void Form1_FormClosing(object sender, FormClosingEventArgs e) 
    { 
     this.salesOrderHeaderTableAdapter.Update(this.yourDataSet.SalesOrderHeader); 
    } 
+0

像你說的我確實做到了,它仍然不會更新我的的DataGridView ... 私人無效modificationProf_FormClosing(對象發件人,FormClosingEventArgs E) { this.listeProfesseursTableAdapter1.Update(this.teccartHoraireDataSet.ListeProfesseurs); } –

相關問題