Member 12741660 Ответов: 2

Добавление столбца combobox в качестве второго столбца в сетке данных из 5 столбцов. Поле со списком содержит данные из таблицы в базе данных msaccess.


Я должен добавить столбец в качестве второго столбца в представлении таблицы данных в vb.net.
Данные в выпадающем списке сетки должны находиться в паре (.displaymember) и (.valuemember). Я пробовал, но не думаю, что у меня что-то получится. ибо в пробованном коде он добавляет столбец combobox только в качестве последнего столбца.

Что я уже пробовал:

Private Sub frmInvoice_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim strSql1 As String
        Dim combo As New DataGridViewComboBoxColumn()
        strSql1 = "Select ItemAutoID, ItemName from ItemMaster"

        Try
            conn.Open()
            With com
                .CommandType = CommandType.Text
                .CommandText = strSql1
                .Connection = conn
            End With
            adp.SelectCommand = com
            adp.Fill(dt)
            adp.Dispose()
            com.Dispose()
            conn.Close()

            With combo
                .HeaderText = "Item Name"
                .Name = "combo"
                .DisplayMember = "ItemName"
                .ValueMember = "ItemAutoID"
            End With
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
        DataGridView1.ColumnCount = 5
        DataGridView1.Columns(0).Name = "Sr. No."
        DataGridView1.Columns.Add(combo)
        DataGridView1.Columns(2).Name = "Uom"
        DataGridView1.Columns(3).Name = "Qty"
        DataGridView1.Columns(4).Name = "Rate"
        DataGridView1.Columns(5).Name = "Value"


        

    End Sub

2 Ответов

Рейтинг:
18

Suvendu Shekhar Giri

Попробуй -

DataGridView1.Columns.Insert(1, combo)

Пожалуйста, дайте мне знать, если это не поможет.
Спасибо :)


Member 12741660

вы правы,но решение пришло поздно, я нашел его вчера. Эта же линия работает. Но все равно спасибо.

Suvendu Shekhar Giri

Рад, что ваша проблема устранена :)

Рейтинг:
0

Patrice T

Вы должны научиться использовать отладчик как можно скорее. Вместо того чтобы гадать, что делает ваш код, пришло время увидеть, как он выполняется, и убедиться, что он делает то, что вы ожидаете.

Отладчик позволяет вам следить за выполнением строка за строкой, проверять переменные, и вы увидите, что есть точка, в которой он перестает делать то, что вы ожидаете.
Отладчик-Википедия, свободная энциклопедия[^]
Освоение отладки в Visual Studio 2010 - руководство для начинающих[^]

Отладчик здесь для того, чтобы показать вам, что делает ваш код, и ваша задача-сравнить его с тем, что он должен делать.
Когда код не делает того, что ожидается, вы близки к ошибке.

DataGridView1.Columns.Add(combo)

Что позволяет вам думать, что ваш код добавляет столбец во вторую позицию ?