DataAdapter更新后,DataGridView ComboBox列选择消失

时间:2014-05-25 14:32:43

标签: .net vb.net datagridview combobox oledb

所以我的DataGridView上有一个Status列。 DataGridView由来自SQL服务器的数据填充,包括状态列。 我的目标是将该列从TextBox列转换为ComboBox列。 基本上我做的是:

  1. 插入新的ComboBox列。
  2. 将数据从TextBox列(从服务器填充)复制到ComboBox列。
  3. 隐藏TextBox列。
  4. 更新了TextBox列,其中包含对ComboBox列进行的更改。
  5. 使用dataadpter和TextBox列更新数据库。
  6. 它可能不是很漂亮,但它有效,我无法在网上找到更好的想法。

    我现在唯一的问题是在更新数据库(使用OleDB)之后,ComboBox列中的选择默认为Nothing而不是之前的实际值。

    数据库更新前的行: enter image description here

    数据库更新后的行: enter image description here

    这是更新代码:

        Private Sub ReqUpdate_Click(sender As Object, e As EventArgs) Handles ReqUpdate.Click
    
        'This method updates the database with changes made in DVGrequestsSQL.
        Dim changes As DataSet
        Try
            cmdReqBuilder = New OleDb.OleDbCommandBuilder(daReq)
            changes = dsReq.GetChanges()
            If changes IsNot Nothing Then
                daReq.Update(dsReq.Tables(0))
            End If
            dsReq.AcceptChanges()
            Label11.Visible = False
            Me.DGVrequestsSQL.Columns("StatusQ").AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells
            MsgBox("Updates saved successfuly!")
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    
    End Sub
    

    现在列" StatusQ"不是DataSet的一部分(DataSet Status列是隐藏的),我不知道为什么选择默认为什么,不知道如何解决它。 任何人都可能有解决方案吗?

    谢谢!

0 个答案:

没有答案