2013-02-22 193 views
0

例如,我有一个程序,有10个按钮,当我按下一个随机的名字时,它的名字保存为一个字符串,我想为该按钮的名称添加1,例如,如果我按下按钮1生病更改字符串说button2,但现在我不能使用该字符串,因为它不能将字符串转换为system.windows.forms.buttons,我已经尝试了Me.Controls bu它没有为我工作。将字符串转换为

例子:

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清楚,一切都在此代码对我的作品除了“字符串= Button1的”它说,串不能转换为system.windows.forms.button,但那正是我想要做的,我有一个程序有100个按钮,当按下任何按钮时,它将(“Dim local as button”)的值设置为变量local =按钮,它的作品,所以我采取该button.name并从它删除1,所以我得到上面的按钮的值(PS:我有一个网格上的按钮,并垂直其f rom 1到10,如果我删除1我得到按钮的名称abore ex:button1gA3成为Button1gA2)但当我尝试做到这一点local2 = stringy它给了我那个消息(字符串不能转换为system.windows.forms。按钮)任何人都知道如何解决这个问题?

谢谢。

回答

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 
0

您可以使用FindControl()按名称查找控件。请注意,它不是递归的,因此您需要在包含按钮的直接父级上调用此方法。