关于本地化的实现,如果是隐式的,好像必须在每个页面的.cs文件里绑定资源文件,如:
        Label1.Text = (string)base.GetLocalResourceObject("Label1Resource1.Text");
        Label2.Text = (string)base.GetLocalResourceObject("Label2Resource1.Text");
        Label4.Text = (string)base.GetLocalResourceObject("Label4Resource1.Text");
        Label5.Text = (string)base.GetLocalResourceObject("Label5Resource1.Text");
这样的话个人感觉有点不好
能否写成一个共通方法:
可以读取页面上的所有控件,然后自动绑定资源文件
请教一下如何读取页面上的所有控件?

解决方案 »

  1.   

    不是这个意思,我是指如何写成一个Common方法(检索出某个页面所有与资源文件绑定的控件,然后在读取对应语言的资源文件),以后每个页面的后台代码直接调用这个方法,就能实现对应语言资源文件的绑定
    如何才能检索出某个页面所有与资源文件绑定的控件?
    有没有直接的方法?或者类似的方法?
      

  2.   

    string s;
    foreach (Control ctrl in this.Controls)
      if ((object)(s = resManager.GetString(GetControlName(ctrl),
                                            currentCulture)) != null)
        ctrl.Text = s;
    vs2003里的方法
    但是2005里Control的text属性没有了,郁闷