0

特定の列のすべてのデータを 1 つのコンボボックスに表示したいのですが、コードは列の最後のデータを表示しているだけです。ここで使用しているコードは次のとおりです。

Dim connectionstring As String = "Data Source=localhost\SQLEXPRESS;InitialCatalog=Enginee;Integrated Security=True"

Try
        Dim connection As New SqlClient.SqlConnection(ConnectionString)
        Dim sqlquery As String
        connection.Open()
        MessageBox.Show("Open")
        sqlquery = " Select PROJECT.PROJECT_CODE,PROJECT.PROJECT_NAME From PROJECT INNER JOIN ENGINEERS on ENGINEERS.ENGINEER_ID = ENGINEERS.ENGINEER_ID where ENGINEERS.FNAME = '" & Sign_In.TextBox1.Text & "' "

        Dim selectcommand As New SqlClient.SqlCommand(sqlquery, connection)
        Dim reader As SqlClient.SqlDataReader = selectcommand.ExecuteReader
        Dim test As Boolean = reader.Read

        While test = True
            ComboBox1.Text = reader(0)
            TextBox1.Text = reader(1)
            test = reader.Read
        End While
    Catch ex As Exception
        MessageBox.Show("Failed")
    End Try
4

1 に答える 1

2

ComboBox の .text を設定する代わりに、アイテムを追加します。

ComboBox1.Items.Add(reader(0));

Text 値を設定すると、ドロップダウン リストに追加されるのではなく、現在の項目が設定されるだけです。

于 2013-09-25T11:33:52.167 に答える