首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >排序列表( MaskedTextBox)

排序列表( MaskedTextBox)
EN

Stack Overflow用户
提问于 2013-08-23 15:41:38
回答 1查看 95关注 0票数 2

列表Private msklistclass1 As New List(Of MaskedTextBox)在执行以下代码后包含以下MaskedTextBox控件

代码语言:javascript
复制
 For Each ctrl As Control In Me.pnlclass11.Controls
    If TypeOf ctrl Is MaskedTextBox Then
      msklistclass1.Add(ctrl)
    End If
 Next

seat112
seat212
seat312
seat412
seat512
seat612
seat122
seat222
seat322
seat422
seat522
seat622

但它们不是按照我上面显示的顺序排列的,我想。当我试图按顺序分配这些控件的值时,它们不会按顺序分配。

我尝试了以下代码

代码语言:javascript
复制
For i = 0 To 11 Step 1
     msklistclass1(i).Text = rno312(i)
Next

我期待的任务是

代码语言:javascript
复制
seat112  1138M0321
seat212  1138M0322
seat312  1138M0323
seat412  1138M0324
seat512  1138M0325
seat612  1138M0326

但是他们没有按这个顺序被分配,是否有可能对列表msklistclass1进行排序

这一行给出了下面的输出msklistclass1.Sort(Function(x, y) x.Name.CompareTo(y.Name))

代码语言:javascript
复制
seat111  1138M0321  seat121  1138M0321
seat211  1138M0323  seat221  1138M0324
seat311  1138M0325  seat321  1138M0326
seat411  1138M0326  seat421  1138M0327
seat511  1138M0328  seat521  1138M0329
seat611  1138M0330  seat621  1138M0331

但我想

代码语言:javascript
复制
seat111  1138M0321  seat121  1138M0327
seat211  1138M0322  seat221  1138M0328
seat311  1138M0323  seat321  1138M0329
seat411  1138M0324  seat421  1138M0330
seat511  1138M0325  seat521  1138M0331
seat611  1138M0326  seat621  1138M0332
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-23 16:05:03

使用LINQ,您可以这样做:

代码语言:javascript
复制
Dim listOrdered = From m In msklistclass1 Order By m.Text

或者,如果不能使用LINQ或不想使用LINQ,则执行以下操作:

代码语言:javascript
复制
msklistclass1.Sort(Function(x, y) x.Name.CompareTo(y.Text))

注意:如果您想按照MaskedTextBox的不同属性进行排序,那么只需将Text更改为任何属性名称,例如Name

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18406802

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档