gpt4 book ai didi

c# - 组合框显示system.data.datarowview

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

我在 winform 中有一个组合框,它通过调用 MySQL 中的存储过程来获取数据。

我的存储过程:

CREATE PROCEDURE `GetCourses`()
BEGIN
SELECT course_name FROM my_db.courses where group_id=1;
END

现在类(class)名称与组合框(ComboBox2)绑定(bind),如下所示 - 选择另一个组合框(ComboBox1)时:

private void Form_Load(object sender, EventArgs e)
{
var connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
conn = new MySqlConnection(connectionString);
conn.Open();
MySqlCommand cmd1 = new MySqlCommand();
cmd1.Connection = conn;
cmd1.CommandType = CommandType.StoredProcedure;
cmd1.CommandText = "GetCourses";
DataTable dt1 = new DataTable();
MySqlDataAdapter adp1 = new MySqlDataAdapter(cmd1);
adp1.Fill(dt1);
}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedIndex == 3)
{
comboBox2.ValueMember = "course_name";
comboBox2.DisplayMember = "course_name";
comboBox2.DataSource = dt1;
}
}

但是当我运行表单时,组合框填充了“system.data.datarowview”值

Form

有人可以帮我解决这个问题吗?

注意:我不想通过使用“MySqlDataReader”来实现此目的

提前致谢。

最佳答案

只需通过以下两行代码即可解决此问题。

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (comboBox1.SelectedIndex == 3)
{
foreach (DataRow row in dt1.Rows)
comboBox2.Items.Add(row["course_name"]);
}
}

关于c# - 组合框显示system.data.datarowview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32256154/

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