1

我有一个 C++ 程序集,其中托管和非托管代码都编译为 DLL。它已正确导入到项目引用中,因为我可以使用对象浏览器查看我的所有类及其成员。

问题在于 XAML 设计视图。在我的 XAML 代码中,我想用我的 C++ 程序集进行数据绑定,所以我有这样的命名空间:

xmlns:kudu="clr-namespace:kudu;assembly=CLI"

CLI 是 dll 的名称,它内部有一个名为 kudu 的命名空间。设计视图拒绝显示 XAML 并给我这个错误:

未找到程序集“CLI”。确认您没有遗漏
装配参考。另外,验证您的项目和所有引用的
组件已建成。

最好的部分是我实际上可以构建整个解决方案并且一切正常!窗口会随着 C++ 对象的变化而更新,而不是什么。然而,如果没有设计视图,这会使继续开发变得相当困难。

有没有人回答为什么会发生这种情况以及我该如何解决?

4

3 回答 3

2

我发现的另一种解决方案是将包含所有 DLL 的程序集的 bin 目录添加到 windows PATH 变量中。

于 2008-12-15T19:52:41.293 回答
1

这可能是因为 ide 无法加载非托管 dll 之一。您可能必须将它们移动到 windows/system32 中。

于 2008-11-10T17:16:56.900 回答
0

非常有帮助,感谢您的见解。

我的解决方案是使用 Post-Build 事件将 DLL 复制到输出目录中。方法如下 1. 项目属性/构建事件 2. 设置构建后事件命令行:

复制 path_to_dependent_dlls 。

哦,我发现它需要重新启动 VStudio 才能开始工作......

于 2009-05-08T02:51:43.527 回答