这是我的代码。
例如TextBox1.Text = 12,34,45,67,67
Dim process_string As String() = TextBox1.Text.Split(New Char() {","})
Dim process As Integer
For Each process In process_string
Combo1.Items.Add(process)
count = count + 1
Next process
total_process.Text = count
End If
Dim array(count) As String
Dim a As Integer
For a = 0 To count - 1
array(a) = Combo1.Items(a).ToString
Next
a = 0
For a = count To 0
Combo2.Items.Add(array(a).ToString)
Next
我想在combobox2中以相反的顺序添加可在combobox1中使用的值 但是当我运行应用程序时,第二个组合框保持为空并且没有显示任何值。
答案 0 :(得分:2)
你已经为循环
指定了这个 For a = count To 0
但是你需要添加STEP -1来反过来。
For a = count To 0 Step -1
答案 1 :(得分:0)
2件事。首先,K.I.S.S. Keep it simple stupid
For i As Integer = ComboBox1.Items.Count - 1 To 0 Step -1
ComboBox2.Items.Add(ComboBox1.Items(i))
Next
第二:它没有用,因为你忘记了最后一个循环的步骤-1
~~~~~~~~~~~~~~编辑~~~~~~~~~~~~~~
使用组合框中的sorted属性对组合框中的数据进行排序
ComboBox3.Sorted = True
按照相反的顺序对数据进行排序应该像之前尝试的那样使用数组完成。以下代码应该足够了:
Dim List As ArrayList = ArrayList.Adapter(ComboBox3.Items)
List.Sort()
List.Reverse()
ComboBox4.Items.AddRange(List.ToArray)
如果你想获得创意,你可以创建自己的组合框类并制作自己的排序属性版本,允许“排序alpha”,“排序数字”,“排序alpha Desc”和“排序”数字desc“和其他一些选项。但是如果你打算在很多地方使用它,我只会这样做。