Заполните определенные столбцы в datagridview из данных MySQL VB.NET - PullRequest
0 голосов
/ 06 февраля 2012

Я создал Datagridview с 4 столбцами, EJ:

ID, Name, Quantity, other

Но я хочу заполнить эти 3 столбца из MySQL EJ:

item_id, item_name, item_quantity

Я попробовал этот код:

    Using cn As New MySqlConnection("server=10.10.2.1;userid=root;password=gf-159753;database=quick_admon")
        cn.Open()

        Dim da As New MySqlDataAdapter("SELECT * from qa_items", cn)
        ' DataTable  
        Dim dt As New DataTable

        ' llenar el DataTable  
        da.Fill(dt)

        ' enlazar el DataTable al BindingSource  
        list_items.DataSource = dt

        With list_items 
            .MultiSelect = False 
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect

            .DataSource = list_items.DataSource
        End With

    End Using

но это создает новые столбцы и не записывает в существующие, заняло некоторое время в поисках решения, но только находит методы, подобные этому.

1 Ответ

4 голосов
/ 06 февраля 2012

Не удалось bind столбцы из вашего запроса в столбцах представления таблицы данных. Для этого

1.) Щелкните правой кнопкой мыши DataGridView.
2.) Появится всплывающее меню и Нажмите Редактировать столбцы
3.) Свяжите каждый столбец ( ID , Имя , Количество , Прочее ), введя имя поля (item_id, item_name, item_quantity). ) соответственно из ваш запрос в свойстве DataPropertyName (, чтобы он не создайте другой столбец, как вы сделали ).

И все готово!

UPDATE

Настройка DataPropertyName Пропорционально

list_items.Columns("ID").DataPropertyName = "item_id"

или Предполагая, что ID - это ваш первый столбец:

list_items.Columns(0).DataPropertyName = "item_id"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...