Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在VB.net中动态(在运行时)创建列表框?_Vb.net_Winforms_Listbox - Fatal编程技术网

如何在VB.net中动态(在运行时)创建列表框?

如何在VB.net中动态(在运行时)创建列表框?,vb.net,winforms,listbox,Vb.net,Winforms,Listbox,我试图在VisualBasic2008中单击按钮时创建一个列表框。我似乎找不到能做到这一点的代码。 我发现了一些非常相似的例子,并说这会起作用: Dim lstOutput As ListBox lstOutput = Me.Controls.Add("VB.Label", "List1") 问题是括号内的两个内容都会产生错误: 对于第一个: “字符串”类型的值无法转换为“System.Windows.Forms.Control” 第二个: “Public Overridable Sub A

我试图在VisualBasic2008中单击按钮时创建一个列表框。我似乎找不到能做到这一点的代码。 我发现了一些非常相似的例子,并说这会起作用:

Dim lstOutput As ListBox

lstOutput = Me.Controls.Add("VB.Label", "List1")
问题是括号内的两个内容都会产生错误:

对于第一个:

“字符串”类型的值无法转换为“System.Windows.Forms.Control”

第二个:

“Public Overridable Sub Add(值为System.Windows.Forms.Control)”的参数太多

有什么想法吗?

试试这个

Dim lstOutput As new ListBox()
Me.Controls.Add(lstOutput)

您必须使用如下新关键字:

输出为新列表框
Me.Controls.Add(lstOutput)

这将添加一个空列表框作为页面中的最后一个控件:

Dim lstOutput As New ListBox With { .Id = "List1" }
Page.Controls.Add(lstOutput)
你想要这个:

Dim lstOutput As New ListBox()
Me.Controls.Add(lstOutut)

请注意,添加了“New”关键字以实际创建控件。

每次按下按钮时(假设代码位于a按钮下方),列表框将添加到左上角。如果每次你想添加一个新的列表框时,它都会添加在另一个列表框的顶部,而你却看不到新的列表框,该怎么办。如何在不指定坐标的情况下动态地将一个列表框添加到另一个列表框中?

感谢您的快速回答,但该列表框仍会导致以下错误:变量“lstOutput”在赋值之前使用。运行时可能会导致空引用异常。请检查以下示例:将Dim LSTOUTOUP用作新列表框