さて、最初にすることは、パネルコントロールを一度取得することです。次に、クリックメソッドを作成してから、ハンドラーを追加します。これは、ページ読み込みイベントの前に行う必要があります。ハンドラーを追加する必要がある場合は、page_Initイベントを使用してボタンを作成します。
Private Sub WebForm1_Init(sender As Object, e As EventArgs) Handles Me.Init
Dim tempPanel As Panel = form1.FindControl("upperpanel")
If tempPanel Is Nothing Then
Return
End If
For i = 1 To 500
Dim img As New ImageButton
img.ID = "ibtn" + i.ToString
img.ImageUrl = "images/design/click.gif"
AddHandler img.Click, AddressOf ImageButton_Click
tempPanel.Controls.Add(img)
Next
End Sub
Protected Sub ImageButton_Click(sender As Object, e As ImageClickEventArgs)
Dim tempImageButton As ImageButton = CType(sender, ImageButton)
Select Case tempImageButton.ID
Case "ibtn1"
'blah
Case Else
End Select
End Sub
パフォーマンスに関しては、パネルコントロールを前もって取得するとパフォーマンスが向上します。おそらくそれほど多くはありません。500個のボタンの作成には時間がかかります。