Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.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
.NET 4.0-Microsoft.Windows.Shell-它在哪里?_.net_Visual Studio 2010 - Fatal编程技术网

.NET 4.0-Microsoft.Windows.Shell-它在哪里?

.NET 4.0-Microsoft.Windows.Shell-它在哪里?,.net,visual-studio-2010,.net,Visual Studio 2010,我正在研究Sofa V2.5的示例,它是一个WPF对接框架 这些是VS2010、.NET4.0。在一个项目中,有一个对“Microsoft.Windows.Shell”程序集的引用,该程序集尚未解析 当我打开Add引用并查找.NET程序集时,我没有看到Microsoft.Windows.Shell。为什么不呢?我在Windows7上运行VS2010。怎么会丢失呢?如果它没有丢失,为什么VS2010看不到它呢?它可能包含在以下内容中:它现在有一个NuGet包: Install-Package Mi

我正在研究Sofa V2.5的示例,它是一个WPF对接框架

这些是VS2010、.NET4.0。在一个项目中,有一个对“Microsoft.Windows.Shell”程序集的引用,该程序集尚未解析


当我打开Add引用并查找.NET程序集时,我没有看到Microsoft.Windows.Shell。为什么不呢?我在Windows7上运行VS2010。怎么会丢失呢?如果它没有丢失,为什么VS2010看不到它呢?

它可能包含在以下内容中:

它现在有一个NuGet包:

Install-Package Microsoft.Windows.Shell
2020年6月更新:根据@yaron在评论中提供的更新,此软件包不再可用。正如NuGet页面所述:

所有者未列出此包。这可能意味着该包已被弃用或不应再使用


System.Windows.Shell
Microsoft.Windows.Shell
相同
System.Windows.Shell
包含在
PresentationFramework.dll
中。 因此,在.xaml文件中,直接使用名称空间中的类。在代码隐藏中,使用命名空间中的类,包括“using System.Windows.Shell;”

扩展: WindowsChrome从.net4.5开始提供

从NuGet获取:

Install-Package Microsoft.Windows.Shell -Version 3.0.1
注意添加了
-版本3.0.1
,如果不添加此内容,将收到错误。

在Microsoft Visual Studio中 去

工具>>NuGet软件包管理器>>软件包管理器控制台

在PackageManager控制台窗口中键入此选项

Install-Package Microsoft.Windows.Shell -Version 3.0.1
软件包所有者(Gareth Evans)决定取消它的列表,但它仍然可用。
但是,我不建议使用它。
此版本已过时,可能包含某种错误或漏洞。

目前,接受的答案仍然是有效的选择。
不过,如果链接现在有一天停止工作,我也不会感到惊讶。
.msi安装程序文件将在
%ProgramFiles%\Microsoft WPF\

Microsoft.Windows.Shell.dll v3.5.41019.1将位于WindowChrome目录中

旁注:
不要浪费时间尝试将Microsoft Ribbon用于WPF。这是一场噩梦。
还有更好的选择,比如

此外,我发现Fluent Ribbon使用它来代替Microsoft.Windows.Shell(ControlzEx包含Shell函数的源代码)

如果接受答案的链接停止工作,另一种选择是获取多语言应用工具包。


在撰写本文时,它包含了相同的版本(3.5.41019.1),并且似乎将来会支持它。(支持VS2019,有翻译服务和依赖它的客户,推荐UWP应用程序本地化等)

我仍然不知道如何安装它?谢谢!但是,在运行此程序后,如何使其显示在“添加引用”下的“扩展”中?安装程序包:无法找到程序包“Microsoft.Windows.Shell”功能区,该功能区现在包含在BCL、System.Windows.Controls.Ribbon中。不再需要使用RibbonControl库了。这个问题专门针对.NET 4.0。这对受旧框架限制的开发人员没有帮助。xmlns:shell=“clr namespace:System.Windows.shell;assembly=PresentationFramework”