我有一个带有dataGridView的vb.net表单 dataGridView数据源是带有此sql语句的dgvTableAdapter SELECT membres.ID, membres.refere_par, bands.titre, membres_1.prenom ' ' membres_1.nom AS reference_nomFROM ((bands INNER JOIN membre
dataGridView数据源是带有此sql语句的dgvTableAdapter
SELECT membres.ID, membres.refere_par, bands.titre, membres_1.prenom & ' ' & membres_1.nom AS reference_nom FROM ((bands INNER JOIN membres ON bands.ID = membres.[band]) INNER JOIN membres membres_1 ON membres.refere_par = membres_1.ID)
我从像这样的membres表中删除了membres
' Get member id Dim userId As Integer userId = DataGridView1.Item( 0,0).Value ' Delete the member Me.MeoshowDataSet2.membres.FindByID(userId).Delete() Me.MembresTableAdapter.Update(Me.MeoshowDataSet2) ' Refresh datagrid dataGridView1.Refresh() ' does nothing
我知道删除语句有效,因为我看到了数据库中的更改.如果我关闭表单并重新打开它,dataGridView是最新的.
membres表是一个访问表
我在visual 2010调试模式下运行应用程序.
通常的方法是重置DataGridView的DataSource.尝试使用此代码(使用正确的代码从数据集中提供正确的表):
dataGridView1.DataSource = typeof(List); dataGridView1.DataSource = dataset.Tables["your table"];
调用.Refresh()不起作用,因为它只强制重绘,但绘制网格的代码不知道更改.