例如我有一个带有10个按钮的程序,当我按下一个随机的程序时,它的名字被保存为一个字符串,我想在按钮的名称上添加1,例如,如果我按下button1生病,改变字符串说按钮2但是现在我不能使用该字符串,因为它无法将字符串转换为system.windows.forms.buttons,我已经尝试过Me.Controls,但它对我来说没有用。
示例:
dim stringy as string
dim integr as integer
dim buton as button
sub procedureee
stringy = stringy.remove(0,6)
integr = val(stringy) + 1
stringy = "Button" & integr
button.backcolor = white
end sub
Button1_Click
stringy = button1
procedureee
/ *编辑* /
对不起,我想我没有让我的sefl清楚,此代码中的所有内容都适用于我,除了“stringy = button1”它表示字符串无法转换为system.windows.forms.button但这正是我想要做的,我有一个包含100个按钮的程序,当按下任何按钮时,它设置(“Dim local as button”)变量local =按下按钮的值,它可以工作,所以我拿了那个button.name并从中删除1所以我得到上面按钮的值(PS:我有一个网格上的按钮,垂直从1到10,如果我删除1 il得到按钮的名称abore ex:button1gA3成为Button1gA2)但是当我尝试这个local2 = stringy它给了我那条消息(字符串不能转换成system.windows.forms.button)有谁知道如何解决这个问题?
感谢。
答案 0 :(得分:0)
您可以使用FindControl()
按名称查找控件。请注意,它不是递归的,因此您需要在包含按钮的直接父级上调用此方法。
答案 1 :(得分:0)
你去......
Private Sub Button_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.click
Dim FullButtonName As String = sender.text
Dim ButtonsNumber As String = FullButtonName.Replace("Button", "").Trim
Dim NewButtonNumber As Integer = CType(ButtonsNumber, Integer) + 1
sender.text = "Button " & NewButtonNumber.ToString
End Sub