如何将组合框与两个表WPF链接

时间:2019-02-08 08:53:48

标签: c# wpf visual-studio visual-studio-2012 combobox

如何将数据库中的两个不同的表链接到组合框?

我与表的组合框连接是通过以下代码完成的:

 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 :(得分:0)

就像我在您的问题下方的评论中提到的那样:

1)编写一个SQL查询

2)连接您的数据库

3)查询

4)阅读结果

5)将其绑定到您的组合框

您不能向组合框添加多个数据源,因此您应该在代码中从2个表中创建一个表。

类似这样的代码,但是您应该进行修改(例如,connectiong字符串,数据库,表名..)。

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();
}