簡體   English   中英

通過ComboBox1和ComboBox2的選定值篩選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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM