Как связать комбобокс с двумя таблицами wpf - PullRequest
0 голосов
/ 08 февраля 2019

Как связать две разные таблицы из базы данных с комбинированным списком?

Мое соединение со списком осуществляется с этим кодом:

 combobox1.ItemsSource = database.Mavads.ToList();
            combobox1.DisplayMemberPath = "MavadName";
            combobox1.SelectedValuePath = "MavadFe";

И:

<ComboBox HorizontalAlignment="Left" Margin="826,168,0,0" VerticalAlignment="Top" Width="120" Name="combobox1" SelectionChanged="combobox1_SelectionChanged" TabIndex="3"  IsTextSearchEnabled="True" Loaded="combobox1_Loaded"   />

Этот код работает правильно, но показывает только одну таблицу.Мне нужны обе таблицы, а не одна!Что мне делать?

1 Ответ

0 голосов
/ 08 февраля 2019

Так, как я упомянул в комментарии ниже вашего вопроса:

1) Написать SQL-запрос

2) Подключите вашу БД

3) Выполните запрос

4) Прочитайте ваши результаты

5) Привязайте его к вашему списку

Вы не можете добавить несколько источников данных к вашему списку, поэтому вы должны сделать одну таблицу из 2 таблиц в коде.

Нечто подобное в коде, но вы должны внести изменения (например, строка соединения, база данных, имя таблицы ..).

string sqlQuery = "SELECT * FROM Mavads INNER JOIN OtherTable ON Mavads.CD = OtherTable.AB;"
using (SqlConnection sqlConnection = new SqlConnection("YourConnectionString"))
{
    SqlCommand sqlCmd = new SqlCommand(sqlQuery, sqlConnection);
    sqlConnection.Open();
    SqlDataReader sqlReader = sqlCmd.ExecuteReader();

    while (sqlReader.Read())
    {
        comboBox.Items.Add(sqlReader["name"].ToString());
    }

    sqlReader.Close();
}
...