如何实例化一个UserControl使用VB?

所以在C#中声明和实例化一个UserControl,你可以这样做:

UserControl1 userCont = new UserControl1(); userCont.Show(); 

这将显示您的用户控件名为UserControl1。

这是你在C#中做的方式,现在你怎么在VB中做到这一点?

因为我编写了一个Excel Add In,并且在function区中放置了一个userControl,但是它不想显示,而且该项目在VB中,而不是在C#中。

编辑:

我的项目的一些解释:

我有一个Excel 2013和2016 VSTO加载项目types。 我有3个类,即: UserControl1.vb – 作为我的userControl Ribbon.vb – 作为我的function区类ThisAddIn.vb – 作为类中的添加

我的userControl相当简单,它有3个button,一个“是”button,一个“否”button和一个“添加表”button。 它有1个列表框和12个checkbox…

function区也很简单,我有2个button在function区中称为“显示”和“循环”…

ThisAddIn类包含将使这个添加工作,如方法和一般function的代码…

好吧,这是我的课程…

我的项目的目标是:

当单击“显示”button时,CustomTaskPane将出现在右侧的Excel中,在此customTaskPane中将是我的userControl … (这工作) 非常感谢DrDonut的回答

当单击“添加表”button(在userControl中)时,我希望excel迭代所有表单,并将每个listObject的名称(表名)添加到列表框中。 (循环和添加表button是相同的)

在C#中,我知道你去:

 this.ListBox1.Items.Add("Item 1"); 

这将添加一个项目的列表框,同样的原则应用在VB中,但与我的ListBox坐在我的userControl本身固定在CustomTaskPane中,似乎没有任何项目可以添加… (添加项目列表框不起作用)

而关于表循环,或检索他们的名字,这也不工作…

(这就是我真正想要好好去的地方)

希望这个编辑能够澄清一些情况。

一些坚韧的信息:

操作系统:Windows 10 Pro(x64)

内存:32GB

CPU:i7-6700 @ 3.40ghz

Microsoft Visual Studio社区2015年

Microsoft Excel 2016(x64)

在vb.net中,对于任务平台(办公应用程序右侧的面板)来说,它是非常相似的:

 Dim userControl as UserControl Dim userTaskPane as Microsoft.office.tools.CustomTaskPane userControl = new UserControl userTaskPane = Me.CustomTaskPanes.Add(userControl, "Title") userTaskPane.visible = true 

现在应该显示面板。

编辑:来源: https : //msdn.microsoft.com/en-us/library/aa942846.aspx

编辑2:您还需要设置正确的引用。 假设您使用Visual Studio,请转到解决scheme资源pipe理器 – >您的项目 – >参考。 在我的项目中包含以下内容:

  • 的Microsoft.Office.Interop.Excel
  • Microsoft.Office.Tools
  • Microsoft.Office.Tools.Common
  • Microsoft.Office.tools.Common.v4.0.Utilities
  • Microsoft.Office.Tools.Excel
  • Microsoft.Office.Tools.v4.0.Framework
  • Microsoft.VisualStudio.Tools.Applications.Runtime
  • 办公室

我不知道你是否需要所有这些,但肯定会需要其中的一些。