运行前获取本地化的字符串资源(C#Winforms)

时间:2016-09-05 12:04:34

标签: c# winforms

我需要在运行之前获取本地化的字符串资源(C#Winforms)。我在事件OnPaint上有自定义控制按钮和打印文本。我可以在自定义控件的约束器中运行之前为set location设置文化,并在设计器中查看erea for text:

var culture = new CultureInfo("de-DE");

Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;

但是当我在运行之前尝试获取字符串资源时,我得到中性字符串资源而不是德语:

ResourceManager p = new ResourceManager("myProject.Properties.Resources", 
                                        Assembly.GetExecutingAssembly());
Text = p.GetString(ResourceNameForText, new CultureInfo("de-DE"));

如何在跑步之前让德国字符串在设计师中恢复?

1 个答案:

答案 0 :(得分:0)

我们找到了解决方案。我们在自定义控件中创建了一个open属性,它仅在设计时模式下调用Resources.de-DE.resx中的流读取和解析方法。