c# - 在从 C# 中的数据表填充的组合框中设置 SelectedValue?
问题描述
我的表单中有一个组合框。此组合框由数据库中表(教师)中的值填充。
我需要SelectedValue
根据另一个表(学生)中的记录来设置这个 Combobox 的值。两个表都在同一个数据库中。
我尝试SelectedValue
使用从student
表中获取的值进行设置
cmbfaculty.SelectedValue = table.Rows[0][1].ToString();
但它没有用。
到目前为止,我只能填充 Combobox ,
// --- populate faculty cmb ---
MySqlCommand cmdCmb = new MySqlCommand("SELECT facultyname FROM faculty;", db.getConnection());
db.openConnection(); // open connection
using (var reader = cmdCmb.ExecuteReader())
{
while (reader.Read())
{
cmbfaculty.Items.Add(reader.GetString("facultyname"));
}
}
但无法设置SelectedValue
。
string sQuery = "SELECT indexno,faculty FROM student WHERE indexno ='"+selected+"'";
MySqlCommand cmd = new MySqlCommand(sQuery, db.getConnection());
MySqlDataAdapter adapter = new MySqlDataAdapter(cmd);
DataTable table = new DataTable();
adapter.Fill(table);
txtindex.Text = table.Rows[0][0].ToString();
cmbfaculty.SelectedValue = table.Rows[0][1].ToString();
希望能解决问题。
编辑:
能够通过找到与指定字符串完全匹配的项目来做到这一点
ComboBox.FindStringExact Method
,cmbfaculty.SelectedValue = table.Rows[0][1].ToString();
需要替换为
cmbfaculty.SelectedIndex = cmbfaculty.FindStringExact(table.Rows[0][1].ToString()) ;
有没有其他方法来归档这个。
解决方案
能够通过找到与指定字符串完全匹配的项目来做到这一点ComboBox.FindStringExact Method
,
cmbfaculty.SelectedValue = table.Rows[0][1].ToString();
需要替换为
cmbfaculty.SelectedIndex = cmbfaculty.FindStringExact(table.Rows[0][1].ToString()) ;
推荐阅读
- android - 如何在一个应用程序中定义多个表盘的复杂性?
- sql - 使用 SQL 将字符串分解为子字符串集
- reactjs - Redux connect "blocks" navigation with react-router-redux
- javascript - 通过 script.js 在 wordpress 中包含多个文件
- django - 提交表单时如何将消息传递到页面?
- c# - 如何取消 SendPingAsync
- android - React Native 构建:合并 dex 档案时出错
- javascript - How to make "for(var i = 0;i<...)" by press TAB in Visual Studio code?
- zapier - Zapier 提取给定文档的字数并将其与 Google 表格连接
- php - 用于创建测试的随机数组