读书人

在vs2005中这样的写法是异常的吗

发布时间: 2011-12-26 23:09:58 作者: rapoo

在vs2005中这样的写法是错误的吗?
for each obj as label in form.controls
.
.
next
form中有TEXTBOX 和LABEL,这样写是不是无法排除TEXTBOX?我这么写之后就会报错无法将TEXTBOX 强制转换为LABEL,可是我根本就没要它转换啊。

[解决办法]
obj as label 这就是转换
[解决办法]
这样写,是试图把每一个Control类型的obj转成Label然后循环,因此失败。你可以这样来做:

VB.NET code
 
For Each obj As Control In Me.Controls
If (TypeOf (obj) Is Label) Then
Console.WriteLine("aa")
End If
Next

[解决办法]
C# code
for   each (Label lb  in   form.controls )
[解决办法]
VB.NET code
        For Each obj As Object In Me.Controls            MsgBox(obj.text)            MsgBox(obj.name)            '这里根据Obj的名称或文本来决定你要做什么。        Next 

读书人网 >VB Dotnet

热点推荐