找不到System.Windows.Media命名空间?


85

我正在使用来自第三方API的对象,该对象的属性类型为System.Windows.Media.ImageSource,但似乎在任何地方都找不到System.Windows.Media命名空间。如果我尝试添加对项目的引用,那么System.Windows.Media选项列表中不会显示。我的项目还针对.Net 3.5。

为了访问该名称空间,我还需要做其他事情吗?


3
就像我几天前使用谷歌搜索方法时,这只是一个小提示:解决方案中的项目可能具有不同的框架目标,因此,如果找不到引用,请始终仔细检查您正在查看的文件实际位于哪个项目中以及该项目是否仍以旧的.NET版本为目标。
— Akku的

Answers:


59

该System.Windows.Media.Imaging命名空间是PresentationCore.dll中的一部分(如果你正在使用Visual Studio 2008,则WPF应用程序模板会自动添加此引用)。请注意,此名称空间不是WIC库的直接包装,尽管仍有许多较常见的用法可用,并且相对于WIC版本的映射相对明显。有关此命名空间中的类的更多信息,请参见

http://msdn2.microsoft.com/en-us/library/system.windows.media.imaging.aspx


7
如果该链接消失或页面被重定向,则此答案将无用。下次,请在答案中提供真实答案,例如@ MegaMilivoje's。
— leetNightshade 2013年

6
在这些情况下,如何找到我们需要的DLL?该链接没有提及DLL,甚至没有提及“ presentation”一词。您的答案有效,但尚不清楚我们如何在不寻求帮助的情况下解决此问题。
— 凯特2015年

90

您应该添加对PresentationCore.dll的引用。


5
在没有互联网访问的情况下,如何记住参考文献或解决此类问题?
— Anirban Nag'tintinmj'14年

8
我不赞成这个答案,因为对于像我这样的新手,我不知道该文件将存放在哪里。
— 约翰

2
到目前为止最好的答案。另外,我不知道在引用窗口的顶部有一个搜索栏,在这里我正在滚动浏览以查找要添加到引用中的内容。感谢您指出了这一点!
— 寓言

是的,这是需要做的事情,但是由于梅赫梅多夫的回答,我告诉了我在哪里,他获得了我的投票。无论如何都不明显。.NET框架的每个版本文件夹中也都有一个PresentationCore.dll。首先查看您的项目,看看正在使用哪个框架(
— 4.5、4.6。4.61

添加参考到什么地方?
— Vitaly Zdanevich '19

36

添加PresentationCore.dll到您的参考。我PC中的这个DLL网址- C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\PresentationCore.dll


15

对于Visual Studio 2017

在解决方案资源管理器中找到“参考”

右键单击“参考”

选择“添加参考...”

找到“ Presentation.Core”列表并选中复选框

点击确定


然后,我必须WindowsBase.dll从同一目录中添加
— Andrei Krasutski

有裸包吗?
— Demodave

它将在“程序集”下。
— 特雷西·穆迪
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.