我有通過與數據庫不同表的數據集填充2 combobox
的,第一個有項目,第二個具有品牌是基於在第一個combo box
中選擇的項目ID顯示。
例如,在第一個組合框中選擇ID = 1的電視, 第二個填充了ItemId = 1的品牌,例如Samsung,LG,Ext。
我已經嘗試過兩種不同的數據集,但我無法涉及WHERE條件。
我有通過與數據庫不同表的數據集填充2 combobox
的,第一個有項目,第二個具有品牌是基於在第一個combo box
中選擇的項目ID顯示。
例如,在第一個組合框中選擇ID = 1的電視, 第二個填充了ItemId = 1的品牌,例如Samsung,LG,Ext。
我已經嘗試過兩種不同的數據集,但我無法涉及WHERE條件。
假設我有以下兩個表:
我會填充第一組合框是這樣的:
comboBox1.DataSource = db.BRAND.Select(c => c.NAME).ToList();
我會再執行下面的事件處理:
private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
{
Dictionary<string, int> d = db.BRAND.ToDictionary(c => c.NAME, c => c.ID);
comboBox2.DataSource = (from c in db.ITEM
where c.BRAND_ID == d[comboBox1.Text]
select c.NAME).ToList();
}
這是假設的品牌是獨一無二的,但是。
你有沒有試過這種
DataRow[] drSelectedRows = YourDataTable.Select("itemid = "+yourvalue);
或
DataView dv = new DataView(YourDataTable);
dv.RowFilter ="itemid = "+yourvalue;
發佈您的代碼。 – Zaki