当前位置: 代码迷 >> VB Dotnet >> 动态生成的n个控件,怎么设置事件
  详细解决方案

动态生成的n个控件,怎么设置事件

热度:147   发布时间:2016-04-25 02:18:47.0
动态生成的n个控件,如何设置事件
数据库中有n个数据,需要在一个窗口动态生成n个label控件以显示数据,通过查询数据库可以确认n,但是这个n不一定,可以视为随机的整数。

我现在想用控件数组来生成n个label控件,但是由于n是一个随机数,我该如何给label添加点击事件呢?最好能有示例代码。谢谢!
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

AddHandler lab名称.Click, AddressOf 函数名称

例如AddHandler Txt(iLoop).Click, AddressOf Txt_TextChanged


朋友,觉得你的是正确的,但我还是看不懂这个,能否帮我简单做个例子,假如n=5,动态生成5个label,然后为每个label设置点击事件,点击后label.text="hello!",谢谢!

 
   Private Sub BDSJ()
        For iLoop As Integer = 0 To Me.Controls.Count - 1
            If (Me.Controls(iLoop).GetType.ToString = "System.Windows.Forms.Label") Then
                AddHandler Me.Controls(iLoop).Click, AddressOf lab_Click
            End If
        Next
    End Sub

    Private Sub lab_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim lab As Label = sender
        lab.Text = "你点了我!"
    End Sub

代码意思是遍历当前窗体下的所有控件如果是Lab就绑定Click事件,遍历你也可以用for each
  相关解决方案