我在表单上有3个组合框,它们都连接到同一数据源。数据源有8个选项可供选择。如何在组合框中选择3个不同的选项。当我选择一项时,所有组合框都将变为同一选项。
Private Sub FrmExtras_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'RatesDataSet.Extras' table. You can move, or remove it, as needed.
Me.ExtrasTableAdapter.Fill(Me.PricingDataSet.Extras)
End Sub
Private Sub CboOptions1_SelectedIndexChanged(sender As Object, e As EventArgs) 'Handles CboOptions1.SelectedIndexChanged
If Trim(CboOptions1.Text) <> "O Pick Your Option" Then
TxtQty1.Text = 1
End If
End Sub
问题是您只有一个CurrencyManager
。使用单个CurrencyManager
绑定到同一数据源的三个控件将保持同步。
BindingSource
组件的引入是为与绑定相关的所有事情提供一站式服务,包括对CurrencyManager
的访问。 BindingSource
的许多成员传递到基础CurrencyManager
。
在这种情况下,您需要为每个BindingSource
创建一个单独的ComboBox
,这将导致一个单独的CurrencyManager
,这将导致独立的选择。我没有绑定代码,因此我假设您在设计器中进行了绑定。检查那些DataSource
的ComboBoxes
属性,我想您会发现它们都绑定到相同的BindingSource
。检查DataSource
的DataMember
和BindingSource
,您应该发现它已绑定到DataTable
的DataSet
。
您需要在表单中添加两个新的BindingSources
,并以相同的方式将它们绑定到相同的DataTable
。然后,您可以将这两个BindingSources
绑定到ComboBoxes
中的两个。然后,您应该发现可以在所有三个选项中进行独立选择。