Vb.net VB-访问用代码创建的控件

Vb.net VB-访问用代码创建的控件,vb.net,Vb.net,所以如果我用代码创建一个图片盒 Dim the_pic As New PictureBox With the_pic .Name = "pic" .Size = New Size(30, 100) .Location = New Point(0, SCREEN_HEIGHT / 2 - 50) .SizeMode = PictureBoxSizeMode.StretchImage .BackColor

所以如果我用代码创建一个
图片盒

    Dim the_pic As New PictureBox
    With the_pic
        .Name = "pic"
        .Size = New Size(30, 100)
        .Location = New Point(0, SCREEN_HEIGHT / 2 - 50)
        .SizeMode = PictureBoxSizeMode.StretchImage
        .BackColor = Color.White
    End With
    Me.Controls.Add(the_pic)

…如何访问已创建的
PictureBox
的方法和属性?因为它是用代码创建的,所以我不能直接编程。如果我做了pic.*它甚至不知道pic存在,因为它是在运行时创建的。我如何解释这一点?非常感谢所有帮助。

您应该使用您为其声明的名称:
the_pic
,这是它的程序名称

如果您查看.designer.vb文件,您将看到当您以图形方式添加控件时,设计器在幕后就是这样做的

您还需要全局声明
pic
with events
,就像在
Private with events中一样,将pic声明为PictureBox
如果不使用事件声明它,则无法连接到它的任何事件

它甚至不知道pic是否存在,因为它是在运行时创建的

那不太正确

事实上,它不知道\u pic是否存在,因为它是一个局部变量
变量在其定义的函数外部不可见

如果将其设置为类中的字段,则该字段在类中的任何位置都可见。
如果你想拥有多个,你应该使用
列表(图片盒)

请注意,
Name
属性不相关