动态图像按钮的数组第一个控件的事件没有触发

时间:2012-02-20 03:30:46

标签: vb.net dynamic-controls

我正在尝试动态显示ImageButtons,这是我能够做到的。我还希望在单击这些动态ImageButtons时触发事件。我在ArrayList中加载了动态控件。除了ArrayList中的第一个 ImageButton之外,我能够为ArrayList中的所有动态ImageButton触发事件。

我是VB.Net的新手,所以任何帮助或建议都将不胜感激。以下是我的代码(我试图仅包含相关代码):

    Dim aryImg As New ArrayList

    For k = 0 To 10 

        sqlImgs.readData()
        Dim img As New ImageButton
        img.CommandName = "imgClick"
        img.CommandArgument = k
        AddHandler img.Click, AddressOf onClick

        aryImg.Add(img)
        aryImg(k).imageurl = sqlImgs.getData("picLoc")
        aryImg(k).id = sqlImgs.getData("lTitle")

        aryImg(k).width = "160"
        aryImg(k).height = "240"
    Next

    Private Sub onClick(ByVal sender As Object, ByVal e As EventArgs)
        Label1.Text = sender.id.ToString

    End Sub

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。我使用DataReader调用数据,当我将其更改为DataSet时,问题就消失了。虽然,我仍然不确定为什么DataReader会阻止许多动态图像按钮中的一个触发事件。