(一)、引言
本地化可能有点专业术语,通俗一点说就是支持多国语言。
本地化在.Net中的实现真的是太简单了,不过对于没有接触过的朋友可能并不知道。

(二)、完成效果
先看下完成后的效果有助于提高大家的兴趣。

情节:默认中文显示 TaskVision1.0  自动更新为 TaskVision2.0
   更改显示方式为英文

TaskVision本地化 
间隔15秒左右,客户端检测到更新
TaskVision本地化
点击是,提示更新完成
TaskVision本地化
点击是,运行新版本TaskVision 2.0
TaskVision本地化
选择语言-》英文
TaskVision本地化
TaskVision本地化 
点击是,启动英文版本
 TaskVision本地化

情节:从英文显示 TaskVision1.0 自动更新为 TaskVision2.0
   更改显示方式为中文

具体省略,怕图片太多,大家加载速度会很慢,显示重点。
检测到更新

TaskVision本地化 
下载完成
TaskVision本地化 
启动新版本,切换为中文
TaskVision本地化 

代码下载:https://files.cnblogs.com/a-peng/SmartClient_Chapter02.rar

(三)、分析
看了上面的效果后,你心动了吗,心动的话就看下去,你很快就将拥有它。

注意:左边栏类似Windows XP左边栏的效果使用TaskVision中自带的第三方控件XPanderControl.dll。没有源码。
不过还有一个效果一样名称一样的开源控件大家可以看下:http://www.codeproject.com/KB/cpp/XPander.aspx 


我们设计完主窗体MainForm后,设置其属性Localizable为true。
则主窗体中显示的文本都被嵌入到资源文件中,如下图:
TaskVision本地化

我们复制该资源文件,命名为MainForm.en.resx
修改内容如下图:
TaskVision本地化 

修改主窗体MainForm构造函数如下:

TaskVision本地化public MainForm()
}

运行程序,我们立马可以看到英文本的效果。注意修改当前UI界面文化必须在InitializeComponent()之前。
为何修改文化为en,则会显示英文呢?因为修改文化为en,则系统会自动加载相关文化的资源如MainForm.en.resx就显示英文了,同理可以添加其它语言的资源文件,则可支持其它语言。

我们还创建了两个资源:Localize.resx,Localize.en.resx用来存放程序中用到的一些文本。
注意使用ResourceManager加载该资源文件时,必须加上命名空间TaskVision。
主窗体源码如下:

TaskVision本地化using System;
TaskVision本地化
using System.Windows.Forms;
TaskVision本地化
TaskVision本地化
using System.Resources;
TaskVision本地化
using System.Threading;
TaskVision本地化
using Microsoft.Win32;
TaskVision本地化
TaskVision本地化
namespace TaskVision
}

好了,就到这里了。

希望越来越多的朋友加入到WinForms的开发中,多写一些心得体会互相交流。
比如如何不使用第三方控件,构建中类似千千静听,PPStream,腾迅qq之类专业软件的界面效果。小菜不知道如何下手。

*************************************************************************
作者:a-peng
出处:
http://a-peng.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出
原文连接,否则保留追究法律责任的权利。
*************************************************************************

相关文章:

  • 2022-12-23
  • 2022-01-16
  • 2021-10-06
  • 2021-06-06
  • 2021-06-12
  • 2021-11-07
  • 2022-03-07
  • 2021-11-22
猜你喜欢
  • 2022-03-07
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-13
  • 2022-12-23
相关资源
相似解决方案