如何为自定义控件设置命名空间

时间:2016-02-15 15:13:07

标签: c# wpf namespaces

我一直在实施这个解释here的解决方案,以制作一个概述的文本框。

我已经创建了一个测试项目,并直接添加到主命名空间中,并且可以正常工作。

现在我想将它添加到库(HelperLib)中,并希望在我想要的任何程序中使用它。例如,程序名为pcdLoggerS2。

enter image description here

但是当我将它添加到我的xaml时它会说

enter image description here

所以这是命名空间的问题。 因此我添加了这个

xmlns:local="clr-HelperLib"

在我对我的Base:WindowViewBase的定义中,但没有任何改变,但它确实在那个命名空间中!

enter image description here

- 加入大卫--- enter image description here

3 个答案:

答案 0 :(得分:1)

您需要确保已将HelperLib项目添加为测试项目的参考。

打开PcdLogger并右键单击References,并添加该项目作为参考。在执行此操作之前,测试项目中的XAML将无法找到正确的程序集。

此外,当您从另一个程序集引用名称空间时,需要将该信息添加到XAML中的名称空间声明中。

(参见:https://msdn.microsoft.com/en-us/library/bb514546%28v=vs.90%29.aspx

举个例子: (我建议将本地命名空间留给本地)

xmlns:helper="clr-namespace:HelperLib;assembly=HelperLib"

编辑: 此外,Visual Studio的intellisense喜欢告诉您,在构建项目之前,命名空间或类不存在。您可能必须重建和/或关闭/重新打开xaml文件以使intellisense再次合作。

答案 1 :(得分:0)

检查你班级的命名空间。

HelperLib它的类名,但不是名称空间。

example

答案 2 :(得分:0)

尝试写下这个:

xmlns:local="clr-namespace:HelperLib"