我试图在页面加载时创建按钮并对其进行事件控制。我能够创建按钮但是当单击按钮时事件似乎没有被触发而是它抛出一个错误,说明找到了id的多个控件。我认为这与按钮的回发和唯一ID创建有关。有人可以指出我要添加什么?
Sub createbutton()
Dim but As New Button
but.Text = "save"
but.ID = "but"
AddHandler but.Click, AddressOf Button_Click
Me.form1.Controls.Add(but)
End Sub
对此的事件控制如下。
Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Handle your Button clicks here
MsgBox("done")
End Sub
我得到了错误
Multiple controls with the same ID '1' were found
子程序createbutton适用于页面加载,如下所示。
Public Class Default3
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load ' to gen page on load ;)
createbutton()
End Sub
感谢帮助,谢谢:)
答案 0 :(得分:0)
我认为你是一个用VB 6.0工作过很多的人 控制阵列功能在VB 6.0中可用
在VB.net中一切都取决于控件ID。
如果您没有像ID这样的特定要求,那么我建议请附加前缀和增量ID来解决您的问题。
如果您有一些具体要求,请告诉我
由于 阿西
更正的代码,而不是ID,它的名称允许唯一性
Public Class Form1
Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
' Handle your Button clicks here
MsgBox("done")
End Sub
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
createbutton()
End Sub
Sub createbutton()
Dim but As New Button
but.Text = "save"
but.Name = "but"
AddHandler but.Click, AddressOf Button_Click
Me.Controls.Add(but)
End Sub
End Class