c# - 如何将我的 UserControl 从另一个项目 (Dll) 添加到我的 WPF 解决方案中?

标签 c# wpf dll user-controls

所以,一切都在标题中,我只想在我的 WPF 窗口中添加一个 UserControl。它看起来很简单,但 UserControl 位于同一解决方案的另一个项目(Dll 项目)中。而且我无法引用它。

所以,我最好的尝试是这样的:

<Window xmlns:local="clr-namespace:MyWindowProject" x:Name="window"
    xmlns:other="clr-namespace:MyDllProject"
    x:Class="MyWindowProject.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>
    <other:MyUserControl />
</Window>

我知道我快要找到如何实现它了,因为我只遇到一个错误,并且自动完成功能正在 MyUserControl 上运行。但是,我遇到了这个奇怪的错误:“命名空间“clr-namespace:MyDllProject”中不存在名称“MyUserControl”。

我确定我做错了什么,但我真的不知道是什么......

最佳答案

xmlns:other="clr-namespace:MyDllProject"

上面的 import 语句表明您正在指向本地项目的命名空间。如果你想添加另一个项目(The Dll Project)的引用,那么你必须像这样添加命名空间

xmlns:other="clr-namespace:MyDllProjectNamespace;assembly=MyDllProject"

这将指向存在于其他程序集中的命名空间。

查看此 Article了解 Xaml 中的命名空间

条件 确保 using 控件可从其他程序集访问。

关于c# - 如何将我的 UserControl 从另一个项目 (Dll) 添加到我的 WPF 解决方案中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17422940/

相关文章:

c# - WPF 数据绑定(bind)到字符串属性

c# - 在 Visual Studio 2015 中调试 native 应用程序加载的托管 DLL

c# - 您如何处理 MVVM ViewModel 中的 'SelectedItemChanged' 事件?

wpf - 如何在Blend/VS中获得所见即所得的设计,而没有在每个XAML文件中合并ResourceDictionary?

c# - 使用 C# Linq Lambda 将两个对象的字段合并为一个,最好不要使用匿名对象

c# - 自定义属性描述符和扁平化层次结构

c++ - VS postbuild事件销毁DLL

C++ 抽象变体实现

C# - DataTable.Merge() 是否添加重复项或更新?

c# - 确保方法逻辑在没有 bool 标志的情况下执行一次的更好方法