我有一个datagridview从数据库中获取数据,它工作正常,但是当我关闭窗体并再次打开它时,它不会清除以前的内容。它将输出先前的选择和新的选择。
我已经尝试过以下代码:

    compSpecs.modelDatagridview1.DataSource = Nothing
    compSpecs.modelDatagridview1.Rows.Clear()
    compSpecs.modelDatagridview1.Columns.Clear()


但它仍然不会清除。也许我做的不对。请帮忙。

这是我的代码:

Private Sub load_model2()
    conn = New MySqlConnection
    conn.ConnectionString = "server=127.0.0.1; port=3306; username=root; password=p@ssw0rd; database= atos_db"
    Dim sda As New MySqlDataAdapter
    Dim bsource As New BindingSource
    compSpecs.modelDatagridview2.DataSource = Nothing
    compSpecs.modelDatagridview2.Rows.Clear()
    compSpecs.modelDatagridview2.Columns.Clear()
    Try
        conn.Open()
        Dim query As String
        query = "select * from atos_db.itemdetails_tbl left join atos_db.brand_tbl on itemdetails_tbl.brand_id = brand_tbl.brand_id left join atos_db.item_tbl on brand_tbl.item_id=item_tbl.item_id where item='" & itemCombobox2.Text & "'"
        comm = New MySqlCommand(query, conn)
        sda.SelectCommand = comm
        sda.Fill(dbDataset)
        bsource.DataSource = dbDataset
        compSpecs.modelDatagridview2.DataSource = bsource
        sda.Update(dbDataset)
        conn.Close()
    Catch ex As MySqlException
        MessageBox.Show(ex.Message)
    Finally
        conn.Dispose()
    End Try
End Sub

最佳答案

首先,这意味着您每次都使用相同的表单实例。如果您每次要显示表单时都创建一个新的实例,则上次没有任何剩余。

但是,如果您不想这样做,则只重新绑定一次就没有用。如果数据仍在数据源中,则网格将再次显示它。如果要删除数据,则需要清除数据源。网格显示数据源中的内容,因此清除数据源,网格也将被清除。

关于mysql - 清除数据绑定(bind)datagridview vb.net,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41994642/

10-09 23:22
查看更多