c#WinForm如何从代码后面的资源文件中检索值

时间:2012-05-04 08:30:42

标签: c# winforms localization resources

在asp.net中,我使用这样的:

  gridView_Desti.Columns["CODE_DEST"].Caption = (string) HttpContext.GetGlobalResourceObject("Client", "Code_Dest");

如何在WinForm上执行相同的操作?

客户端是资源名称文件 - > Client.resx
Code_Dest是Client.resx上的字符串 - >字符串Code_Dest,值Code Destinataire

4 个答案:

答案 0 :(得分:3)

您应该在项目的Resources命名空间中有一个名为Properties的自动生成的类。每个资源都作为该类中的属性公开。

答案 1 :(得分:2)

你可以这样做:

Client.ResourceManager.GetString("Code_Dest");

根据文化,它将在Client.en-US.resx中查找字符串(如果en-US是您当前的文化),如果失败,则在Client.resx中查找。

你也可以像这样访问(Code_Dest必须在Client.resx中):

Client.Code_Dest;

答案 2 :(得分:0)

  1. 添加新项目 - >资源,即'Resources1.resx'
    1. 提供必要的资源名称&价值即字符串资源 - > 'YourResourcesName'值无关。
    2. 使用Resources1.YourResourcesName
    3. 访问其值
  2. 希望得到这个帮助,

答案 3 :(得分:0)

如果你没有使用命名空间,那么前面加上“属性”C#,如下:

Properties.Resources1.YourResourcesName

使用resx文件使代码更清晰。作为一个例子,我有一个DataGridViewImageColumn并为其分配了一个图像(来自VS Image Library - 图像是.png文件):

colAddNewItem.Image = Properties.Resource1.Add_16x;

仅供参考,在VB.Net中它是

Resources.Resources1.YourResourcesName

还有很多其他方法,但这是最简单,最干净的方式。首选方法。