gpt4 book ai didi

c# - 使用 SQL 在 C# 中使用 Combobox

转载 作者:行者123 更新时间:2023-11-29 05:29:39 24 4
gpt4 key购买 nike

首先,提前感谢您的回答。我是一个完全的 C# 菜鸟客栈,到目前为止它非常有趣,但也很复杂。我的问题是:

我将 SQL 数据库连接到 C#,我已经在组合框中显示了“名称”列,但我需要使用“id”列。我想用代码更容易理解。

(我不打算放连接的代码,因为我认为它是无关紧要的)。

private void Form1_Shown(object sender, EventArgs e)
{
conexion.Open();
MySqlCommand cm = new MySqlCommand("select * from tbestados", conexion);
try
{
MySqlDataReader dr = cm.ExecuteReader();
while (dr.Read())
{
comboBox1.Items.Add(dr["nombre"]);
}
dr.Close();
dr.Dispose();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,
Application.ProductName,
MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
conexion.Close();
}

private void button1_Click(object sender, EventArgs e)
{
//When I press this button, i want to display the "id" of my table
MessageBox.Show(Convert.ToString(comboBox1.ValueMember));
}

我将添加一些 MySql 语句以更进一步。

insert into tbEstados (CveEstado, Nombre) values (1, "Aguascalientes");
insert into tbEstados (CveEstado, Nombre) values (2, "Baja California");
insert into tbEstados (CveEstado, Nombre) values (3, "Baja California Sur");

因此,如果我从我的 ComboBox 中选择“Baja California Sur”,我希望我的按钮显示“3”。

谢谢!

最佳答案

我希望你的组合框代码看起来像:

<ComboBox  Name="comboBox1" Width="120" Height="22" ItemsSource="{Binding}"/>

并更新您的代码:

private void Form1_Shown(object sender, EventArgs e)
{
conexion.Open();
try
{
MySqlDataAdapter da = new MySqlDataAdapter("select * from tbestados", conexion);
DataSet ds = new DataSet();
da.Fill(ds, "tbestados");
comboBox1.ItemsSource = ds.Tables[0].DefaultView;
comboBox1.DisplayMemberPath = ds.Tables[0].Columns["Nombre"].ToString();
comboBox1.SelectedValuePath = ds.Tables[0].Columns["CveEstado"].ToString();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,
Application.ProductName,
MessageBoxButtons.OK,
MessageBoxIcon.Error);
}
conexion.Close();
}

并将您的 vbutton 点击​​更新为:

private void button1_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Selected Nombre="+comboBox1.Text+" and CveEstado="+ comboBox1.SelectedValue.ToString());
}

关于c# - 使用 SQL 在 C# 中使用 Combobox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16116099/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com