vb.net - 最高 - 最低值排序文本框
问题描述
我想按升序和降序排列这些值:从最高到最低:
我有一个文本框TxtNumberListScan =
1 3 5 7
1 3 5 8
1 3 5 9
1 3 6 7
1 3 6 8
1 3 6 9
1 3 7 8
1 3 7 9
我有另一个文本框:TxtDrawR1.Text
1
1
1
37
1
23
1
37
这TextBox
是按如下方式创建的:
TxtDrawR1.Text &= Environment.NewLine & lastDraw1
TxtDrawR2.Text &= Environment.NewLine & lastDraw2
TxtDrawR3.Text &= Environment.NewLine & lastDraw3
While ListTxtDrawR1.Items.Count > 0
ListTxtDrawR1.Items.RemoveAt(ListTxtDrawR1.Items.Count - 1)
End While
For i As Integer = 0 To TxtDrawR1.Lines.Count - 1
ListTxtDrawR1.Items.Add(TxtDrawR1.Lines(i))
Next
While ListTxtDrawR2.Items.Count > 0
ListTxtDrawR2.Items.RemoveAt(ListTxtDrawR2.Items.Count - 1)
End While
For i As Integer = 0 To TxtDrawR2.Lines.Count - 1
ListTxtDrawR2.Items.Add(TxtDrawR2.Lines(i))
Next
While ListTxtDrawR3.Items.Count > 0
ListTxtDrawR3.Items.RemoveAt(ListTxtDrawR3.Items.Count - 1)
End While
第一个文本框中的每个值在第二个文本框中都有一个值。
1 3 5 7 = 1
1 3 5 8 = 1
1 3 5 9 = 1
1 3 6 7 = 37
1 3 6 8 = 1
1 3 6 9 = 23
1 3 7 8 = 1
1 3 7 9 = 37
所以我想显示升序和降序(从最低到最高这些值)如下这样的模型或类似的东西:
1 3 6 7 = First Line - because it is the highest value - 37 - starting from the first.
1 3 7 9 = 2st Line - because again it is the highest value in the first Textbox. - value - 37
1 3 6 9 = 3st Line - value - 23
1 3 5 7 = 4st Line - value 1
1 3 5 8 - 5st Line - value 1
1 3 5 9 - 6st Line - value 1
1 3 6 8 - 7st Line - value 1
1 3 7 8 - 8st Line - value 1
基本上最高值是从开始线到结束线。
我不知道如何让它完全按照它应该的方式工作,它根本不起作用。
Dim Top10HighestValues = myList.Select(Function(line)
Dim res = 0
Integer.TryParse(line, res)
Return res
End Function).OrderByDescending(Function(x) x).Take(10)
Dim dictionary As New Dictionary(Of String, Integer)
For Each i In Top10HighestValues
Dim idx = myList.IndexOf(i) + removedEmptyLinesCount
dictionary.Add(i, idx)
Next
For Each d In Dictionary
TextBox2.AppendText(d.Key & vbCrLf)
TextBox2.AppendText(d.Value & vbCrLf)
Next
解决方案
可能我下次也需要这个,所以我放在这里,我不知道这是否会像希望一样运行:
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim ListScan = TxtNumberListScan.Lines.ToList.Select(Function(o, i) New With {.scan = o, .Index = i})
Dim DrawR1 = TxtDrawR1.Lines.ToList.Select(Function(o, i) New With {.draw = o, .Index = i})
Dim list3 = From a In ListScan From b In DrawR1 Where a.Index = b.Index Select LstScan = a.scan, DrwR1 = b.draw Order By DrwR1 Descending
End Sub
推荐阅读
- linux - ping 命令在 CentOS 中不起作用
- javascript - 动态渲染组件中的错误道具
- php - 带有查询字符串的 CI3 高级搜索过滤器
- machine-learning - 如何计算灰度图像中简单深度网络的参数数量
- ruby-on-rails - Rails 从二进制数据流下载 zip
- java - Selenium Endly Java 问题
- php - 将静态函数中的变量调用到php中同一类的另一个静态函数
- r - 每次我尝试在我的图表中添加错误栏时,它都会给我下面的错误
- python - BGR8原始图像转换为numpy python
- c++ - 如何区分用户是 root 还是用户是 sudo'd