Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在XAML中找不到程序集引用,但在XAML.cs类中引用时代码会编译_C#_.net_Wpf_Xaml_Mdi - Fatal编程技术网

C# 在XAML中找不到程序集引用,但在XAML.cs类中引用时代码会编译

C# 在XAML中找不到程序集引用,但在XAML.cs类中引用时代码会编译,c#,.net,wpf,xaml,mdi,C#,.net,Wpf,Xaml,Mdi,我在添加dll引用时遇到了一个奇怪的问题。我有一个WPF应用程序,正在尝试使用WPF MDI库: 如说明中所述(非常模糊),我右键单击VS2012中的引用,单击添加引用..,单击浏览..,并添加了我下载的dll 接下来,我在窗口的XAML中添加了以下行:xmlns:mdi=“clr namespace:WPF.mdi;assembly=WPF.mdi”,如说明所述 但是,当尝试在XAML中添加时,会显示以下错误消息: 找不到类型“mdi:MdiContainer”。验证是否缺少程序集引用,以及是

我在添加dll引用时遇到了一个奇怪的问题。我有一个WPF应用程序,正在尝试使用WPF MDI库:

如说明中所述(非常模糊),我右键单击VS2012中的引用,单击
添加引用..
,单击
浏览..
,并添加了我下载的dll

接下来,我在窗口的XAML中添加了以下行:
xmlns:mdi=“clr namespace:WPF.mdi;assembly=WPF.mdi”
,如说明所述

但是,当尝试在XAML中添加
时,会显示以下错误消息:

找不到类型“mdi:MdiContainer”。验证是否缺少程序集引用,以及是否已生成所有引用的程序集。

名称空间“clr namespace:WPF.MDI;assembly=WPF.MDI”中不存在名称“MdiContainer”。

这是我的XAML:

<Window x:Class="QueryBuilder.Table"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:mdi="clr-namespace:WPF.MDI;assembly=WPF.MDI"
        Height="300" Width="300" WindowStyle="ToolWindow" ResizeMode="NoResize" ShowInTaskbar="False">
</Window>

这个问题让我一整天都很沮丧。我几乎尝试了所有能想到的方法。值得注意的一点是,我已经从库的站点下载了示例应用程序,我可以毫无问题地运行它。除此之外,我还将其添加到项目的xaml.cs类中:
WPF.MDI.MdiContainer d=new WPF.MDI.MdiContainer()和它编译没有任何问题

还请注意,我最初的问题被问到了,但没有一个建议奏效。但是,由于上面的段落似乎表明代码在代码隐藏中成功编译,而不是在XAML文件中,问题现在已经改变了

编辑:我还想补充一点,我可以浏览程序集引用的代码,如下所示


我终于自己解决了这个问题——我将把这个答案留在这里,以防有人有同样的问题。将解决方案本身添加到程序集的引用路径可以解决问题!很遗憾,这没有记录在案


编辑:为了澄清,我所做的是添加解决方案,而不是dll。换句话说,我添加了MDI解决方案及其所有类。这自然适用于源代码也可用的DLL

如果Visual Studio即使在您尝试了所有操作之后仍会不断抱怨和加下划线,只需使用任务管理器终止XDesProc.exe进程,然后重新生成解决方案即可。VisualStudio中对WPF和XAML的支持真是糟糕透顶。

http://wpfmdi.codeplex.com/
。构建该项目并使用bin中的new.dll,使用了它,然后它对我来说运行良好。

你能用一个例子来说明这一点吗?我不知道你的意思,补充了一些澄清。我希望这能有所帮助,因为这个问题让我非常沮丧!是的,但我没有解决方案,但只有DLL=/@DotNET,在所有场景中都不可能添加解决方案。例如,我们如何获得第三方dll的源项目。您的意思是将项目的dll添加到引用中吗?它确实有帮助,但这不适用于将不同的项目配置构建到不同文件夹中的情况