在vb.net中是否有通过循环更改布尔变量的选项
我试图在vb.net中更改for循环中的不同值。但是,我找不到如何更改编号的布尔变量在vb.net中是否有通过循环更改布尔变量的选项,vb.net,Vb.net,我试图在vb.net中更改for循环中的不同值。但是,我找不到如何更改编号的布尔变量 Dim txt1 As Boolean = False Dim txt2 As Boolean = False i = i + 1 If i < 9 Then 'I tried to do: Me.Controls("txt" & i.ToString) = True txt(
Dim txt1 As Boolean = False
Dim txt2 As Boolean = False
i = i + 1
If i < 9 Then
'I tried to do:
Me.Controls("txt" & i.ToString) = True
txt(i) = True
End If
Dim txt1为布尔值=False
尺寸txt2为布尔值=假
i=i+1
如果我<9那么
“我试着做:
Me.Controls(“txt”&i.ToString)=真
txt(i)=真
如果结束
如何更改已编号的布尔变量?最有效的方法是什么?访问布尔变量的正确方法是在数组或列表中 以问题为例:
Dim bool(2) As Boolean
i = i + 1
If i < 9 Then
bool(i) = True
End If
Dim bool(2)作为布尔值
i=i+1
如果我<9那么
布尔(i)=真
如果结束
我想您应该迭代文本框控件
,然后更改TextBox.enabled的属性
您可以尝试以下方法
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
For Each c As Control In Me.Controls
If c.GetType.ToString() = "System.Windows.Forms.TextBox" Then
c.Enabled = True 'You can change the TextBox Controls. Enabled to False too.
c.Text = c.Name.ToString
End If
Next
End Sub
如果为当前项目启用,则Visual Studio将引导您找到需要更正的位置。控件的类型是什么?您不能有与控件同名的变量,因为控件由具有这些名称的变量引用。为什么您认为可以通过表单的控件集合访问布尔变量?它们是控制吗?通过提供控件的名称
属性值,可以从控件
集合访问窗体上的控件。这与变量无关。如果在设计器中添加控件,则用于引用该控件的变量与其name
属性具有相同的名称,但这只是一种方便。它们不必相同,如果在运行时添加控件,它们也不会相同Boolean
值不是控件,也没有Name
属性。正确的方法是使用数组或列表,而不是单个变量。除非使用缓慢(且丑陋)的基于反射的方法,否则无法通过动态构造的名称访问变量。可能需要将布尔值添加到列表(布尔值)
。然后使用索引更改列表中的值。很难想象列表(布尔值)
的实用性<代码>字典(字符串、布尔值)
会很有用。你真的应该分享更多关于你的意图的信息。