簡體   English   中英

將組合框添加到Datagridview

[英]Adding a Combobox to a Datagridview

因此,我正在開發一個小程序,我想將數據從SQL表導入到datagridview,這是ComboBox從同一數據庫的另一表填充的列之一。

這是我當前的代碼:

Public Sub Load_black(Optional ByVal linhas As Integer = 20)
    i = 0
    black.Columns.Clear()
    black.Rows.Clear()
    black.Clear()
    ProdC.Open()
    Query = "SELECT * FROM [plano2] where familia like '%tpa%'ORDER BY ordem"
    myCMD = New SqlClient.SqlCommand(Query, ProdC)
    myDRR = myCMD.ExecuteReader
    If myDRR.HasRows = True Then
        black.Columns.Add("Order", GetType(String))
        black.Columns.Add("Number", GetType(String))
        black.Columns.Add("Name", GetType(String))
        black.Columns.Add("Cut Style", GetType(String))
        black.Columns.Add("Cicles/cm", GetType(String))
        black.Columns.Add("Leght", GetType(String))
        black.Columns.Add("Colors", GetType(String))
        black.Columns.Add("Date", GetType(String))
        While myDRR.Read And i < linhas
            black.Rows.Add(myDRR.Item("ordem").ToString, myDRR.Item("ref").ToString, myDRR.Item("design").ToString, myDRR.Item("tipodecorte").ToString, myDRR.Item("passagenscm").ToString, myDRR.Item("largura").ToString, myDRR.Item("numcores").ToString, myDRR.Item("dataentrada").ToString)
            str_pb_ref(i) = myDRR.Item("ref").ToString
            i = i + 1
        End While
    Else
        MessageBox.Show("Table is empety.")
    End If
    myDRR.Close()
    ProdC.Close()
    grd_black.DataSource = black
End Sub

我想要做的是使用該組合框添加新行。

我已經嘗試了很多方法,但是要么我在數據庫表中有了值,要么我有了帶有其他表值的組合框。

謝謝

我之前解決此問題的方法是在表單設計器中設置datagridview的列,並設置特定的組合框列。

然后使用SELECT DISTINCT查詢填充組合框列選項。

如果需要的話,可以隱藏列標題,直到數據位於datagridview中為止。

更改代碼中的列類型有點麻煩,因為每個列類型是一個不同的列類型對象,您必須創建一個新的實例

 System.Windows.Forms.DataGridViewComboBoxColumn

然后將其添加到datagridview

(第一篇文章-有什么好處嗎?)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM