如何动态更改资源

时间:2014-10-08 12:24:26

标签: c#

我在C#中有一个基于窗口的应用程序。我试图用另一种语言来做这件事,比如阿拉伯语。

我们知道每个表单都有资源文件。我创建了一个全局资源文件ResouceFileName.ar-SA.resx。现在我想在更改CultureInfo时动态更改所有标签。如果我在设计器文件中写如

static class clsLocalization
{ 
    static  ResourceManager  resManager = new ResourceManager(typeof(Secure_Browser_CS_Version.Properties.Resources));

    public static void applyGlobalResources(Control control,string resource)
    {
        System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("ar-SA");
        control.Text=resManager.GetString(resource);
    }
}

// Resource file 
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SBMainForm));//Default

//
// settingHdrLbl
// 
resources.ApplyResources(this.settingHdrLbl, "settingHdrLbl");
clsLocalization.applyGlobalResources(this.settingHdrLbl, "settingHdrLbl");
this.settingHdrLbl.BackColor = System.Drawing.Color.Transparent;
this.settingHdrLbl.Name = "settingHdrLbl";

每当我更改设计器文件时,这将默认重新加载。 Pl帮帮我

0 个答案:

没有答案