![](/img/trans.png)
[英]If combobox1 and combobox2 is true then update the items in combobox3
[英]Filtering ComboBox3 by the selected values of ComboBox1 and ComboBox2
您好,我對comboBox過濾(層疊)有問題。 所以我有:
ComboBox1(由tblDepartment中的數據填充)
comboBox2(由我自己從編輯項目中歸檔:1,2,3,4年)
comboBox3(應從comboBox1和comboBox2的選擇中進行過濾(取決於)。
在comboBox3中,我希望列出2的name_of_course,其部門如comboBox1,年份如comboBox2。
非常感謝。
聽起來像LINQ的工作...
您可以嘗試類似
comboBox3.DataSource = from c in courses
where c.department == comboBox1.Text
&& c.year == int.Parse(comboBox2.Text)
select c.name;
您可以使用ComboBox
SelectedItem
屬性來獲取所選項目。
嘗試這個:
private void button1_Click(object sender, EventArgs e)
{
comboAll.Items.Add(comboCourseName.SelectedItem.ToString()+" "+comboYear.SelectedItem.ToString());
}
SqlConnection conn = new SqlConnection("Data Source=jaci;Initial Catalog=projecttest;Integrated Security=True");
string query = string.Format("SELECT name_of_course FROM course WHERE kathedra='" + comboBox1.Text + "' AND year='" + comboBox2.Text + "'");
SqlCommand cmd = new SqlCommand(query);
DataTable dt = new DataTable();
DataSet ds = new DataSet();
SqlDataAdapter adapter = new SqlDataAdapter(query, conn);
adapter.Fill(dt);
ds.Tables.Add(dt);
foreach (DataRow dr in dt.Rows)
{
comboBox3.Items.Add(dr[0].ToString());
}
我已經解決了這個問題,但是現在我遇到了一個新問題,當我在Cathedra上更改選定的項目時,我在comboBox3中得到了以前的項目,因此我需要聲明以清除這些項目,但是我沒有這樣做不知道將它放在哪里-(comboBox3.items.Clear)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.