Vb.net 如何在vb中对文本框的值进行排序?

Vb.net 如何在vb中对文本框的值进行排序?,vb.net,Vb.net,我有两组文本框,A和B,它们是动态创建的 我的程序应该是这样工作的: 1.A文本框具有相应的B文本框。 2.然后,B文本框应按其值按升序排序。 3.根据该顺序,A文本框的值也将被排序 例: 输出为:2 5 3 1 请帮帮我。谢谢 创建文本框控件的数组,然后编写一个简单的冒泡排序。冒泡排序很慢,但对于少量数据来说速度已经足够快了 Dim arrA() As Textbox = {a1, a2, a3, a4, a5} Dim arrB() As Textbox = {b1, b2, b3, b4,

我有两组文本框,A和B,它们是动态创建的

我的程序应该是这样工作的: 1.A文本框具有相应的B文本框。 2.然后,B文本框应按其值按升序排序。 3.根据该顺序,A文本框的值也将被排序

例:

输出为:2 5 3 1


请帮帮我。谢谢

创建文本框控件的数组,然后编写一个简单的冒泡排序。冒泡排序很慢,但对于少量数据来说速度已经足够快了

Dim arrA() As Textbox = {a1, a2, a3, a4, a5}
Dim arrB() As Textbox = {b1, b2, b3, b4, b5}
Dim Changed as Boolean
Do
  Changed = False
  For i = 0 to arrB.Count - 2 'Stop at the second to last array item because we check forward in the array
    If CInt(arrB(i).Text) > CInt(arrB(i + 1).Text) Then 'Next value is smaller than previous --> Switch values, also switch in arrA
      Dim Temp as String = arrB(i + 1).Text
      arrB(i + 1).Text = arrB(i).Text
      arrB(i).Text = Temp
      Temp = arrA(i + 1).Text
      arrA(i + 1).Text = arrA(i).Text
      arrA(i).Text = Temp
      Changed = True
    End If
  Next
Loop Until Changed = False 'Cancle the loop when everything is sorted
现在,文本框值已排序,您可以随时显示结果

要显示标签中的值,例如l1-l5:

Dim arrL() as Label = {l1, l2, l3, l4, l5}
For i = 0 to 4
  arrL(i).Text = arrA(i).Text
Next

你到底希望发生什么?您想重新排列文本框中的值,还是只想在消息框中显示值列表?嗯。。我希望这些值显示在标签中。示例:label1的文本为2,label2的文本为5,依此类推。
Dim arrL() as Label = {l1, l2, l3, l4, l5}
For i = 0 to 4
  arrL(i).Text = arrA(i).Text
Next