如何限制构建仅支持EN“Microsoft.Expression.Interactions.resources.dll”,并避免使用DE,KR,FR,ES等…?

当我构建我的WPF项目时,它会创建几个语言文件夹,每个文件夹包含“Microsoft.Expression.Interactions.resources.dll”。

奇怪的是,我从未创建过我的资源字符串到其他语言的翻译,但它仍然创建了DE,KR,FR,ES文件夹。 我只需要EN。

如何将本地化限制为EN?

您正在查看这些文件,因为您正在使用Blend SDK for .NET(直接或通过Prism库)。 该SDK包含本地化资源,因此它们包含在您的构建输出中。

以下是创建针对特定文化的Silverlight构建的方法。 它应该以相同的方式用于WPF。 它的主旨是:

  1. 在解决方案中进行新配置。
  2. 编辑每个项目文件以将SupportedCulture指定为“en”(注意大小写)。

如果您的解决方案非常庞大,那么这可能需要做很多工作。 老实说,在WPF应用程序中拥有这些附加文件并不会造成任何损害 – 它们只占用更多的磁盘空间。 您也可以只归档和发送文化资源。 假设您已将NeutralResourcesLanguage定义为您的应用程序将始终能够找到其资源(它们将只是英文)。

@ Mike-Post解决方案对我不起作用:(也许是因为VS2012。我添加了en但没有任何改变,并且还有一个警告,它是无效元素。

但这是另一种解决方案: http : //social.msdn.microsoft.com/Forums/vstudio/en-US/feb23879-660d-43d1-93ef-90a63eef70c6/how-can-i-remove-localization-information-from-我-WPF项目

只需从Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.0\Libraries删除这些文件夹(可能除外)

我对Output文件夹中不需要的本地化文件夹和resources.dll文件有同样的不满。 删除对Microsoft.Expression.Drawing的引用解决了它。

当然,这意味着我不能在该库中使用任何东西; 我在XAML文件中使用来绘制弧。 我刚刚发现了一种绘制弧线的不同方法。