码迷,mamicode.com
首页 > Web开发 > 详细

汉化DotNetBar中控件的系统文本

时间:2018-01-27 13:39:35      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:1年   oca   pos   tar   void   private   man   转化   more   

 

作者:ComponentCN 出处:www.componentcn.com 2011年11月02日 阅读:

DotNetBar很多子控件的系统文本、提示信息等都是可以本地化的,可以转化为多种语言,控件提供DotNetBarManager.LocalizeString事件来进行每个控件的系统文本汉化。如果是想进行全局汉化所有DotNetBar 控件,则可以使用 LocalizationKeys.LocalizeString 事件来进行汉化,如对MessageBoxEx控件进行汉化。

具体请看下面的代码:

全局汉化:

[STAThread]
static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
 
    DevComponents.DotNetBar.LocalizationKeys.LocalizeString += new DevComponents.DotNetBar.DotNetBarManager.LocalizeStringEventHandler(LocalizeString);
 
    Application.Run(new Form1());
}
 
static void LocalizeString(object sender, DevComponents.DotNetBar.LocalizeEventArgs e)
{
     if (e.Key == LocalizationKeys.MessageBoxYesButton)//汉化MessageBoxEx控件中的Yes按钮
            {
                e.LocalizedValue = "是";
                e.Handled = true;
            }
}

当然LocalizationKeys类,里面枚举了很多控件的系统文本,都可以一一进行汉化,具体操作就跟上面一样。
具体某个控件汉化,很多DotNetBar控件都提供了LocalizeString事件,可以在该事件里对该控件的系统文本进行汉化:如navigationPane中系统文本"show more buttons"的汉化:

private void navigationPane1_LocalizeString(object sender, LocalizeEventArgs e)
        {
            if (e.Key == LocalizationKeys.NavBarShowMoreButtons)
            {
                e.LocalizedValue = "显示更多按钮";
                e.Handled = true;
            }
        } 


其他控件的汉化都跟上面的模式一样,这里就不一一介绍了。

汉化DotNetBar中控件的系统文本

标签:1年   oca   pos   tar   void   private   man   转化   more   

原文地址:https://www.cnblogs.com/zhaogaojian/p/8365100.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!