WPF:Localization 基础


在项目文件(<Project_Name>.csproj)中指定当前的本地化信息:
<PropertyGroup>
  <UICulture>en-US</UICulture>
</propertyGroup>

Rebuild,将生成Debug\en-US\<Project_Name>.resources.dll

需使用x:Uid为每个UIElement设定唯一标识:
<Button x:Uid="btnTest">Test Localization</Button>

可以使用工具自动生成:
msbuild /t:updateuid <project_name>.csproj

生成当前语言的本地化文本文件-<Project_Name>.resources.CVS
locbaml /parse en-US\<Project_Name>.resources.dll

手工修正并另存为目标语言文本文件-<Project_Name>.resources.Chinese.CVS

创建目录:Debug\zh-CN

创建目标语言库-zh-CN\<Project_Name>.resources.dll:
locbaml /generate en-US\<Project_Name>.resources.dll
           /trans:<Project_Name>.resources.French.csv
           /cul:zh-CN
           /out:zh-CN

本地化变更代码:
using System.Threading;
using System.

public MyCcApp()
{
            CultureInfo ci = new CultureInfo("zh-CN");

            Thread.CurrentThread.CurrentCulture = ci;
            Thread.CurrentThread.CurrentUICulture = ci;
}

附注:
LocBaml Tool Sample(下载)(需编译,我编译后将exe复制到了bin\debug目录下)
Culture Name(查看

^_^补充:
写完随笔后,看到了一篇文章,内容惊人的相似(Localization in WPF),且比我写的还要简洁易懂,汗!
突然有感:技术跟随者的创新原来都是模仿。汗消,我俩原是同类,Yeah!
明天改行做美工,先给自己设计一个大头像,挂到网上,贴上“真原创:俺自己瞎画的”。^_^
posted @ 2008-01-11 17:17  AskWeee  阅读(1943)  评论(1编辑  收藏  举报