繁体   English   中英

本地化Windows窗体并在运行时更改语言

[英]Localize Windows Forms and Change the Language at Runtime

我正在关注此链接http://www.dotnetcurry.com/ShowArticle.aspx?ID=174本地化Windows窗体并在运行时更改语言。 标签/按钮:文本框的一切正常,但对于Datagridview它不起作用。 当我检查资源文件时,法语版本和默认版本文本在那里,但是当我执行它时,最后一个版本正在加载..当我从列表框中选择时,它不会显示默认的英文版本。

如何使用上面链接中给出的mechnaism在运行时chnage datagridview头文本??? 在此输入图像描述在此输入图像描述在此输入图像描述

该代码只能找到添加到窗体的Controls集合中的控件。 但是没有像这样添加DataGridView列,它会被添加到DataGridView控件中。 您需要改进发布的代码,以便它还迭代它找到的任何DGV的列。 像这样:

    private void ChangeLanguage(string lang) {
        var ci = new CultureInfo(lang);
        System.Threading.Thread.CurrentThread.CurrentUICulture = ci;
        foreach (Control c in this.Controls) {
            ComponentResourceManager resources = new ComponentResourceManager(this.GetType());
            resources.ApplyResources(c, c.Name, ci);
            if (c.GetType() == typeof(DataGridView)) {
                var dgv = (DataGridView)c;
                foreach (DataGridViewColumn col in dgv.Columns) {
                    resources.ApplyResources(col, col.Name);
                }
            }
        }
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM