我有一个相当复杂的 ComboBox 场景,并且作为编程新手,我正在努力寻找最好的方法。
我有一个带有 DataTable 的 DataSet,该 DataTable 有几个数字列的数据。数字数据由以美国标准单位给出的距离组成。我目前有我的 ComboBoxes 设置和工作,但我需要以两种方式扩展我目前拥有的内容。
我需要能够将显示的数据列中的小数转换为分数,有没有办法做到这一点并维护数据绑定?在这种情况下,它是数据源的显示成员......
我需要能够以不同的单位集显示我的下拉选项......我已经编写了单位转换类来帮助解决这个问题,但我不知道我是否也能以某种方式做到这一点并维护数据绑定? 我也想转换显示成员上的单位......
Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ComboBox1.SelectionChangeCommitted Select Case ComboBox1.SelectedItem Case "Tire1" With ComboBox2 .DataSource = Tire1BindingSource .ValueMember = "OD" .DisplayMember = "OD" End With Case "Tire2" With ComboBox2 .DataSource = Tire2BindingSource .ValueMember = "OD" .DisplayMember = "OD" End With Case "Tire3" With ComboBox2 .DataSource = Tire3BindingSource .ValueMember = "OD" .DisplayMember = "OD" End With Case "HubCap" ComboBox3.DataSource = Nothing With ComboBox2 .DataSource = HubcapBindingSource .ValueMember = "ID" .DisplayMember = "ID" End With End Select End Sub Private Sub ComboBox2_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ComboBox2.SelectionChangeCommitted Select Case ComboBox1.SelectedItem Case "Tire1" With ComboBox3 .DataSource = Tire1BindingSource .ValueMember = "ID" .DisplayMember = "Weight" End With Case "Tire2" With ComboBox3 .DataSource = Tire2BindingSource .ValueMember = "ID" .DisplayMember = "Weight" End With Case "Tire3" With ComboBox3 .DataSource = Tire3BindingSource .ValueMember = "ID" .DisplayMember = "Weight" End With Case "HubCap" ComboBox3.DataSource = Nothing With ComboBox2 .DataSource = HubCapBindingSource .ValueMember = "ID" .DisplayMember = "ID" End With End Select
在处理显示分数和单位等问题时,使用组合框的最佳方法是什么...