我已经存在listbox
,需要显示我从数据库中检索到的值。
这里需要在插入之前检查值,如果它已经存在,则寻找突出显示现有项目的方法。
以下是我正在使用的代码
try {
myConnection.Open();
SqlCommand myCommand2 = new SqlCommand("SELECT * FROM PatientDataFields where PatientID='" + x + "'", myConnection);
SqlDataReader rdr = myCommand2.ExecuteReader();
while (rdr.Read())
{
Form2 form2 = new Form2();
form2.Show();
form2.Race.SelectedItem = rdr["Race"].ToString();
}
}
答案 0 :(得分:0)
这样做,并确保从db中返回的值必须存在于列表框控件项
中如果数据库值位于listBox(DataTextField)的文本字段中
listbox.SelectedText = valueFromDB;
或者如果数据库值在listBox(DataValueField)的值字段中
listbox.SelectedValue = valueFromDB;
答案 1 :(得分:0)
如果要进行多项选择,请确保将SelectionMode设置为MultiSimple。其余的代码对我来说很好。
try
{
myConnection.Open();
SqlCommand myCommand2 = new SqlCommand("SELECT * FROM PatientDataFields where PatientID='" + x + "'", myConnection);
SqlDataReader rdr = myCommand2.ExecuteReader();
Form2 form2 = new Form2();
form2.Show();
form2.Race.SelectionMode = SelectionMode.MultiSimple;
while (rdr.Read())
{
string item = rdr["Race"].ToString();
if (form2.Race.FindString(item) != -1)
form2.Race.SelectedItem = item;
else
form2.Race.Items.Add(item);
}
}