C# 从数据库中获取多个值,并在索引更改时显示在组合框和不同的文本框中#
我想在文本框中根据产品表中的id和组合框cBproductName中选定索引的更改显示产品代码和设备名称。我的查询提供了所有值,但无法在表单中显示 您可以更改SQL语句以包含所需的信息 比如:C# 从数据库中获取多个值,并在索引更改时显示在组合框和不同的文本框中#,c#,.net,winforms,sql-server-2008,visual-studio-2013,C#,.net,Winforms,Sql Server 2008,Visual Studio 2013,我想在文本框中根据产品表中的id和组合框cBproductName中选定索引的更改显示产品代码和设备名称。我的查询提供了所有值,但无法在表单中显示 您可以更改SQL语句以包含所需的信息 比如: try { // var model =Execute.q"SELECT product.id, product.productName, product.unitId, product.productCode, units.name FROM product
try
{
// var model =Execute.q"SELECT product.id, product.productName, product.unitId, product.productCode, units.name FROM product INNER JOIN units ON product.unitId = units.id";
string query1 = "SELECT product.id, product.productName, product.unitId, product.productCode, units.name FROM product INNER JOIN units ON product.unitId = units.id";
command = DBConnectivity.getCommandForQuery(query1, connection);
dataset = new DataSet();
adapter = new SqlDataAdapter(command);
adapter.Fill(dataset);
int reslut = command.ExecuteNonQuery();
this.cBproductName.DisplayMember = "productName";
this.cBproductName.ValueMember = "id";
datarow = dataset.Tables[0].NewRow();
datarow["productName"] = "Select Product";
dataset.Tables[0].Rows.InsertAt(datarow, 0);
this.cBproductName.DataSource = dataset.Tables[0];
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
private void cBproductName_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.cBproductName.SelectedValue != null)
{
txtProCode.Text = this.cBproductName.SelectedValue.ToString();
}
}
将cBproductName\u SelectedIndexChanged方法更改为:
SELECT product.productName + ' ' + product.productCode + ' ' + units.name AS ShowText, product.id, product.productName, product.unitId, product.productCode, units.name FROM product INNER JOIN units ON product.unitId = units.id
我绑定到包含DataRow元素的数据集的组合框。使用datareaders填充文本框
此.cBproductName
是一个新对象,没有任何内容。这将在组合框中显示所有值product name、product code和unit name,但我只需要组合框中的product name和所有其他值product code,不同文本区域中的id和单元id以及单元名称。请帮我更新答案。ComBox绑定到一个数据集,该数据集包含DataRow元素。如果您使用ComboBox.SelectedItem,则它将是一个数据行
DataRow row = this.cBproductName.SelectedItem as DataRow;
if (row != null)
{
txtProCode.Text = row["ShowText"].ToString();
}