如何将数据库中的两个不同的表链接到组合框?
我与表的组合框连接是通过以下代码完成的:
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" />
此代码正常工作,但仅显示一个表。我需要两张桌子,而不仅仅是一张!我该怎么办?
答案 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();
}