3个组合框都连接到1个数据源,需要能够选择单独的选项

问题描述 投票:0回答:1

我在表单上有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
database vb.net visual-studio combobox
1个回答
0
投票

问题是您只有一个CurrencyManager。使用单个CurrencyManager绑定到同一数据源的三个控件将保持同步。

BindingSource组件的引入是为与绑定相关的所有事情提供一站式服务,包括对CurrencyManager的访问。 BindingSource的许多成员传递到基础CurrencyManager

在这种情况下,您需要为每个BindingSource创建一个单独的ComboBox,这将导致一个单独的CurrencyManager,这将导致独立的选择。我没有绑定代码,因此我假设您在设计器中进行了绑定。检查那些DataSourceComboBoxes属性,我想您会发现它们都绑定到相同的BindingSource。检查DataSourceDataMemberBindingSource,您应该发现它已绑定到DataTableDataSet

您需要在表单中添加两个新的BindingSources,并以相同的方式将它们绑定到相同的DataTable。然后,您可以将这两个BindingSources绑定到ComboBoxes中的两个。然后,您应该发现可以在所有三个选项中进行独立选择。

© www.soinside.com 2019 - 2024. All rights reserved.