开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 5382|回复: 8

devexpress webform 汉化

[复制链接]

0

精华

186

贡献

386

赞扬

帖子
246
软币
7892
在线时间
1875 小时
注册时间
2013-6-30
发表于 2013-8-16 11:59:28 | 显示全部楼层 |阅读模式
WebForm汉化
在讲Developer Express ASP.NET控件汉化前,我先介绍Visual Studio ASP.NET是如何进行显式本地化的,只有了解它,那么Dev的ASP.NET汉化就可以迎刃而解了。
VS Asp.net本地化
您将手动创建资源文件,然后使用 ASP.NET 声明性表达式语法引用这些文件。这里资源文件的基名称为 Zhy_WebLocalized。对于要本地化的每种语言,都将另外创建一个文件,并在文件名中包含相应的语言代码(有时可能还有区域性代码)。例如,对于美国英语,将创建名为 Zhy_WebLocalized.resx 的文件。对于简体中文,将创建名为 Zhy_WebLocalized.zh-CHS.resx 的文件。这两个文件都将放在 Web 应用程序的 Resources 目录下。下面对如何实现做一详细的讲解:
一、创建资源文件
1.   在解决方案资源管理器中,右击网站的根目录,单击添加 ASP.NET 文件夹中App_GlobalResources。
2.   在App_GlobalResources文件夹中添加资源文件Zhy_WebLocalized.resx,该文件将充当回退区域性的资源。
3.   再创建一个 .resx 文件,并将其命名为 Zhy_WebLocalized.zh-CHS.resx。字符串“zh-CHS”将文件标识为浏览器的语言设置为中国(简体)时使用的资源。
4.   创建第三个 .resx 文件,并将其命名为 Zhy_WebLocalized. ja-JP..resx。字符串 “ja-JP”将文件标识为浏览器的语言设置为日本(日本语)时使用的资源文件。
5.   打开 Zhy_WebLocalized.resx 文件。在“名称”列的第一行中键入 strMsg。在“值”列的第一行中,键入 Hello , China。保存文件并将其关闭。
6.   打开 Zhy_WebLocalized.zh-CHS.resx,创建名为 strMsg的资源字符串,并为其分配值“你好,中国”。完成之后,保存并关闭文件。
7.   打开 Zhy_WebLocalized.ja-JP.resx,创建名为 strMsg的资源字符串,并为其分配值“こんにちは、中国”。完成之后,保存并关闭文件。
向page添加 Label 控件
1.  将另一个 Label 控件拖动到页上。
2.  单击Label 控件Expressions属性框中的省略号 (…) 按钮。出现“Expressions”对话框。
3.  在“Bindable Properties”列表中选中为“Text”。
4.  在“Expression Type”列表中选择“Resources”。
5.  在“Expression Properties”下,将“ClassKey”设置为 Zhy_WebLocalized,并将“ResourceKey”设置为 strMsg。单击“确定”。
6.  切换到“Source”视图。标签的文本属性现在具有一个显式表达式,说明将从其中检索要选择的资源和键的基文件。代码如下:<asp:Label ID="Label1" Runat="server" Text="<%$ Resources: Zhy_WebLocalized, strMsg %>">
再在Web.config的中追加如下代码:
<system.web>
             <globalization enableClientBasedCulture="true" culture="auto:zh-CHS" uiCulture="auto:zh-CHS"/>
</system.web>
注:Zhy_WebLocalized属性不具有语言指示符、区域性指示符或 .resx 扩展名,因为它不是实际的文件名。实际上,Zhy_WebLocalized表示基础资源类。ASP.NET 将根据浏览器发送的区域性,从文件名中包含相应的语言或区域性代码的文件中选择资源,文件名可能类似 Zhy_WebLocalized.zh-CHS.resx 和 Zhy_WebLocalized.ja-JP.resx,或者,如果未找到匹配的语言,则为 Zhy_WebLocalized.resx。
完成资源文件并添加声明性表达式后,可以开始测试页。做完最后一个测试后,浏览器被设置为将中国(简体)作为语言首选项进行报告。测试期间,会多次更改浏览器的语言。
对page进行测试
1.  按 Ctrl+F5 运行该页。在资源编辑器中提供的中文(简体)版文本将显示为 Label 控件的文本。
2.  在 Microsoft Internet Explorer 中,单击“工具”菜单上的“Internet 选项”。单击“语言”。
3.  在“语言首选项”对话框中,将“日本(日本语)[ja-JP]”移动到语言列表的顶部。完成后,单击“确定”并关闭“Internet 选项”对话框。
4.  按 F5 刷新浏览器。此时显示文本的日语版本。
5.  将语言更改为阿拉伯语,并再次按 F5 刷新该页。此时,该文本将以在回退资源文件中使用的语言显示。因为没有创建文件 LocalizedText.ar-eg.resx,ASP.NET 无法定位与浏览器报告的语言和区域性匹配的文本,因此会使用回退资源文件。
6.  完成对该页的测试后,将语言再次设置为首选语言。
DEV Asp.net本地化
明白了VS ASP.NET的本地化原理后,那么本文主要讲的Dev Asp.net控件的汉化就变得简单了。Dev所有Developer Express ASP.NET控件商家都给出了基础资源类,默认情况下这些文件位于“C:/Program Files/Developer Express .NET  vX.Y/Sources/DevExpress.Web.ASPxGlobalResources/”的文件夹下(这里vX.Y是版本号)。
DevExpress ASP.NET Control    Resource File
ASPxGridView    DevExpress_Web_ASPxGridView_vX_Y.resx
ASPxEditors    DevExpress_Web_ASPxEditors_vX_Y.resx
ASPxScheduler    DevExpress_Web_ASPxScheduler_vX_Y.resx
ASPxperience Suite    DevExpress_Web_vX_Y.resx
ASPxHtmlEditor    DevExpress_Web_ASPxHtmlEditor_vX_Y.resx
ASPxPivotGrid    DevExpress_Web_ASPxPivotGrid_vX_Y.resx
ASPxSpellChecker    DevExpress_Web_ASPxSpellChecker_vX_Y.resx
ASPxTreeList    DevExpress_Web_ASPxTreeList_vX_Y.resx
根据上面的资源文件列表,拷贝这些文件到当前解决方案的App_GlobalResources文件夹目录下,新建本地化资源,其实这里我们用不着再新建自己的本地化资源,我们只需复制一份基础资源类,将它的名称改为本地化名,并对其进行汉化就可以了。(注:这里必须同时存在基础资源类文件和本地化类文件)
e.g.
DevExpress_Web_ASPxGridView_vX_Y. zh-CHS.resx
DevExpress_Web_ASPxEditors_vX_Y. zh-CHS.resx
DevExpress_Web_ASPxScheduler_vX_Y. zh-CHS.resx
DevExpress_Web_vX_Y. zh-CHS.resx
DevExpress_Web_ASPxHtmlEditor_vX_Y. zh-CHS.resx
DevExpress_Web_ASPxPivotGrid_vX_Y. zh-CHS.resx
DevExpress_Web_ASPxSpellChecker_vX_Y. zh-CHS.resx
DevExpress_Web_ASPxTreeList_vX_Y. zh-CHS.resx
再在Web.config的中追加如下代码:
<system.web>
             <globalization enableClientBasedCulture="true" culture="auto:zh-CHS" uiCulture="auto:zh-CHS"/>
     </system.web>
原贴:http://blog.csdn.net/ljsql/article/details/5487460

评分

参与人数 4赞扬 +4 收起 理由
bogus123 + 1 感谢分享
neillengh + 1 感谢分享
luosshunwen + 1 感谢分享
[-jj] + 1 Thanks

查看全部评分

回复

使用道具 举报

0

精华

2

贡献

15

赞扬

帖子
178
软币
1055
在线时间
94 小时
注册时间
2013-7-11
发表于 2013-8-16 14:51:41 | 显示全部楼层
赚贡献的吧  哈哈
回复

使用道具 举报

0

精华

186

贡献

386

赞扬

帖子
246
软币
7892
在线时间
1875 小时
注册时间
2013-6-30
 楼主| 发表于 2013-8-18 13:56:53 | 显示全部楼层
坛中里还没有WEB的,留下备用。
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
22
软币
118
在线时间
7 小时
注册时间
2014-2-17
发表于 2014-2-18 08:48:52 | 显示全部楼层
没有找到你说的文件。。
回复

使用道具 举报

0

精华

186

贡献

386

赞扬

帖子
246
软币
7892
在线时间
1875 小时
注册时间
2013-6-30
 楼主| 发表于 2014-2-18 09:51:38 | 显示全部楼层
回复

使用道具 举报

0

精华

0

贡献

0

赞扬

帖子
22
软币
118
在线时间
7 小时
注册时间
2014-2-17
发表于 2014-2-18 10:03:25 | 显示全部楼层
xiaoz 发表于 2014-2-18 09:51
http://www.devexpress.com/Support/Center/Question/Details/A421
http://www.devexpress.com/Suppo ...

我的是13.1.5的版本,但是没找到你说的.resx的资源文件,在系统中。
请问这个版本汉化怎么使用啊?我的项目是webform。
谢谢
回复

使用道具 举报

0

精华

186

贡献

386

赞扬

帖子
246
软币
7892
在线时间
1875 小时
注册时间
2013-6-30
 楼主| 发表于 2014-2-18 17:46:02 | 显示全部楼层
cool 发表于 2014-2-18 10:03
我的是13.1.5的版本,但是没找到你说的.resx的资源文件,在系统中。
请问这个版本汉化怎么使用啊?我的项 ...

下载WEB的本地化文件啊。在链接里找
回复

使用道具 举报

头像被屏蔽

0

精华

-4

贡献

6

赞扬

禁止发言

帖子
121
软币
578
在线时间
83 小时
注册时间
2015-5-4
发表于 2015-6-29 13:32:12 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽

0

精华

-4

贡献

6

赞扬

禁止发言

帖子
121
软币
578
在线时间
83 小时
注册时间
2015-5-4
发表于 2015-6-29 13:40:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-3-29 02:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表