0
好的,所以我想要做的是單擊列表框中的一個項目,該列表框從sql數據庫中獲取數據,具體取決於用戶鍵入到文本框中。通過列表框獲取SQL數據
現在,當我在第一個列表框中單擊該項目時,需要有關該項目的更多信息才能顯示在第二個列表框中。 當用戶在文本框中輸入一個名字時,會顯示出前10個字符,現在我已經有了,我需要點擊其中一個項目並在下一個列表框中獲取該客戶端的'任務'。任務是數據庫中的MATTERS。
我很確定我的代碼是正確的,我沒有錯誤,但沒有顯示在列表框中。
這裏是我的代碼:
private void listBox1_SelectedValueChanged(object sender, EventArgs e)
{
string item = listBox1.SelectedItem.ToString();
if (listBox1.ContainsFocus)
{
if (item == "")
{
}
else
{
var con2 = Conn.ConnString();
using (SqlConnection myConnection2 = new SqlConnection(con2))
{
string oString2 = "select CLIENTMATTERS.MATTER, CLIENTMATTERS.DESCRIPTION from CLIENTMATTERS join CLIENTCODES on CLIENTMATTERS.CLIENT = CLIENTCODES.CLIENT Where CLIENTCODES.DESCRIPTION = '@code1'";
SqlCommand oCmd = new SqlCommand(oString2, myConnection2);
oCmd.Parameters.AddWithValue("@code1", item);
myConnection2.Open();
oCmd.Connection.Open();
List<string> codelist2 = new List<string>();
using (SqlDataReader oReader2 = oCmd.ExecuteReader())
{
if (oReader2.HasRows)
{
string value = string.Empty;
while (oReader2.Read())
{
codelist2.Add(oReader2["MATTER"].ToString());
}
}
}
this.listBox2.DataSource = codelist2;
}
}
}
}