创建可由VB使用的C#WPF DLL

时间:2018-10-30 09:54:07

标签: c# wpf vb.net user-interface dll

我尝试使用WPF框架在C#中创建一个DLL。我想在VB(在excel中)中将此DLL作为GUI使用。我在Visual Studio上开发DLL,并创建了一个UserControl WPF库项目。

目标是使用WPF在C#DLL中创建GUI界面,并在我的Visual Basic脚本上使用它。例如:我想用WPF / C#创建2个按钮,创建一个包含我2个按钮的DLL。然后,在我的Visual Basic窗口中显示它们。

我创建了一个UserControl WPF项目,并在此UserControl中放置了2个按钮。 请参阅我的xaml代码:Code's Xaml

我的C#类: enter image description here

我的DLL构建成功。 然后我运行以下命令来注册我的DLL:

regasm /codebase /s WpfControlLibrary1.dll

但是在执行这些步骤之后,我在VB中看不到我的DLL的引用。而且我无法在WpfControlLibrary1类型的对象上创建。

所以我的问题是...如何使用可以在Visual Basic GUI中显示的GUI WPF创建C#DLL? 我应该在Visual Studio中创建UserControl WPF项目吗? 还有其他解决方案吗?

没有WPF的简单C#DLL在VB中可以正常工作,但我不知道如何使用WPF GUI ...

谢谢您的帮助;)

1 个答案:

答案 0 :(得分:0)

不确定UserControlLibrary项目。但是,在我不得不处理已经在Vb.net中开发的项目之前,我也遇到过类似的情况。因此,我们正在用C#开发新的控件,并在Vb.net中引用它们。

  1. 创建一个类库。

enter image description here

  1. 添加参考:System.xaml,Presentationcore,System.drawing

enter image description here

  1. 将新的UserControl项添加到解决方案中。

enter image description here

  1. 在此阶段之后,您可以根据需要修改用户控件。打开新的/现有的Vb.net项目,并将此.dll(从C#创建,包含用户控件)添加为参考。

  2. 在Xaml中,添加对命名空间的引用并使用它。