动态编译生成的模块,ComponentResourceManager无法定位到正确的资源文件
dll模块是用csharpcodeprovider动态编译后生成的
编译的时候包含了3个文件:xxx.cs,xxx.resources,xxx.en.resources(一个程序文件和二个语言资源)
两个资源文件都通过EmbeddedResources嵌入到输出文件中
但模块动态加载并运行的时候,无论主线程的CurrentUICulture如何设置,只会加载默认的资源,也就是xxx.resources中的内容
xxx.en.resources的内容始终无法自动加载
研究了几天,貌似ms的说法是ComponentResourceManager只会从附属程序集中找相应的语言资源,但我动态生成的并没有附属程序集,也没看到有生成附属程序集的选项
编译的时候包含了3个文件:xxx.cs,xxx.resources,xxx.en.resources(一个程序文件和二个语言资源)
两个资源文件都通过EmbeddedResources嵌入到输出文件中
但模块动态加载并运行的时候,无论主线程的CurrentUICulture如何设置,只会加载默认的资源,也就是xxx.resources中的内容
xxx.en.resources的内容始终无法自动加载
研究了几天,貌似ms的说法是ComponentResourceManager只会从附属程序集中找相应的语言资源,但我动态生成的并没有附属程序集,也没看到有生成附属程序集的选项
...全文
相关推荐
自己做的简易计算器
老师让做得计算器ComponentResourceManager componentResourceManager = new ComponentResourceManager(typeof(Form1));
C# 从资源中读取wav
C# 从资源中读取wav 简便实用 System.ComponentModel.ComponentResourceManager resources ......
C# WinForm 程序的界面多语言切换
WinForm 程序的界面多语言切换 介绍一种只需对现有代码做较小改动的方法。
界面多语言切换
在VisualStudio的设计视图中如果在Properties窗口中改变了程序的默认界面语言Language我们会注意到无论是工程还是窗体对应的Designercs文件都会有显著的改变。
C# WinForm多国语言界面的实现
这是C#对于多语言界面的最常规实现法,大量C#的商用软件也是如此实现


