2012-01-05 45 views
1

我有以下結構VB.NET數據綁定從2表

|-Table 1 
|--PK IDT1 
|--Name field 
|-Table 2 
|--PK ID 
|--FK IDT1 
|--Name field 

欲結合表1至combobox1和表2至combobox2,以便當有人選擇在combobox1的值,combobox2僅與填充具有combobox1中的FK IDT1值的行。這可能與數據綁定或我必須編碼?

您的應用程序的 FORM_LOAD
+0

這是有關的WinForms,WPF或ASP.Net? – Richard 2012-01-05 20:46:27

+0

這是WinForms! – Theveloper 2012-01-05 20:47:48

回答

0

只是填充只ComboBox1。這個僞代碼可以幫助你:

您的應用程序的Form_Load:

 Bind ComboBox1 
     SET DISPLAY MEMBER Property of BomboBox1 to field 
     SET VALUE MEMBER Property of ComboBox1 to IDT1 
     Clear ComboBox1 current Text 

SelectionChangeCommitted你ComboBox1

 Bind ComboBox2 using the following Query: 
      SELECT ID, field FROM Table2 WHERE IDT1 = ComboBox1.SelectedValue.ToString 
     SET DISPLAY MEMBER Property of ComboBox2 to field 
     SET VALUE MEMBER Property of ComboBox2 to IDT 

的SelectedIndexChanged事件是每次提出 SelectedIndex屬性值更改。如果您的ComboBox最初是空的,則其SelectedIndex爲-1。當您將數據綁定到它的第一項被默認選中,SelectedIndex的變化爲0。然後,您將明確設置的SelectedIndex再次-1。

如果您只想知道用戶何時進行選擇,請改爲處理SelectionChangeCommitted事件。