首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

vb.net 批量赋值textbox有关问题

2012-09-09 
vb.net 批量赋值textbox问题我在panel2里面放了9个textbox。因为是做实验,现只简单的想把此9个textbox赋值

vb.net 批量赋值textbox问题
我在panel2里面放了9个textbox。因为是做实验,现只简单的想把此9个textbox赋值为0,1,2.。。。8
程序如下:
Dim i As Integer = 0
  For Each txt In Panel2.Controls
  If txt.GetType.ToString.Equals("System.Windows.Forms.TextBox") Then
  txt.Text = i.ToString
  i = i + 1
  End If
  Next
执行以后textbox值为8,7,6.。。。0
我想知道,如何才能实现倒序排列,从第一个textbox开始赋值。
有两种方法,一种是赋值的时侯,有没有使之倒过来的方法。
第二种也可以,就是创建textbox的时侯,使之倒序。当名字为textbox9,textbox8.。。textbox1的排列,就可以产生正的赋值了。
只是在创建textbox的时侯,我是用复制的,默认的都是从有几个就从几开始。一至到最后是1.

[解决办法]
For Each txt In Panel2.Controls.OfType(Of TextBox)().OrderBy(Function(c) c.Name)
...
Next
以及
For Each txt In Panel2.Controls.OfType(Of TextBox)().OrderByDescending(Function(c) c.Name)
...
Next 

热点排行