Member 13924837 Ответов: 1

Как считывать данные из таблиц и отображать их в выпадающем списке и текстовом поле


У МЕНЯ ЕСТЬ ФОРМА, ГДЕ Я ХОЧУ ПОЛУЧИТЬ ДАННЫЕ ИЗ ТАБЛИЦЫ, ГДЕ ДВА СТОЛБЦА КОДА И ТЕМЫ. ФОРМА ИМЕЕТ COMBOBOX И TEXTBOX.КОГДА Я ВЫБИРАЮ КОД ИЗ COMBOBOX, ТО В ТЕКСТОВОМ ПОЛЕ ОТОБРАЖАЕТСЯ ПРАВИЛЬНАЯ ТЕМА

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




ДИМ КОН КАК ОБЪЕКТ OLEDBCOMMAND=НОВЫЙ ОБЪЕКТ OLEDBCOMMAND("ПОСТАВЩИК=МАЙКРОСОФТ.Джет.Oledb для.4.0;ИСТОЧНИК ДАННЫХ=Д;
Кон.Открыть
ДИМ УМК КАК ОБЪЕКТ OLEDBCOMMAND=НОВЫЙ ОБЪЕКТ OLEDBCOMMAND("SELECT ИЗ СУБЪЕКТОВ", - КОН -)
ДОКТОР=ЦМД.ВЫПОЛНЕНИЕ ЧИТАТЕЛЯ()
В ТО ВРЕМЯ КАК ДОКТОР РИД=TRUE
CMBSUBJECT.ITEMS.ADD(DR(0))

TXTSUBJECT.TEXT=DR. GETVALUE(1)
КОНЕЦ ПОКА

Richard MacCutchan

Вы устанавливаете текстовое поле из первой записи combobox. Вам нужен обработчик событий combobox, чтобы захватить событие selectionchanged.

Кстати: ваша кнопка caps lock, кажется, застряла.

Nelek

Кроме того, я пропустил (") в вашем коде.

1 Ответов

Рейтинг:
6

a.mohamedyasin

Просто попробуйте с приведенным ниже примером

Dim dt As New DataTable
        dt.Columns.Add("Id", GetType(Int32))
        dt.Columns.Add("Data", GetType(String))
        dt.Rows.Add(1, "Test1")
        dt.Rows.Add(2, "Test2")
        ComboBox1.DataSource = dt
        ComboBox1.DisplayMember = "Data"
        ComboBox1.ValueMember = "Id"



Private Sub ComboBox1_SelectedValueChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedValueChanged
       If Not IsNothing(ComboBox1.SelectedItem) Then
           If Not IsNothing(ComboBox1.SelectedValue) Then
               txtValueTxt.Text = ComboBox1.SelectedValue
           End If

           txtDisplayText.Text = DirectCast(ComboBox1.SelectedItem, System.Data.DataRowView).Row.ItemArray(1)

       End If

   End Sub


не забудьте принять ответ, если у вас есть решение.