zoukankan      html  css  js  c++  java
  • .Net Globalization and Localization

    随着互联网的发展日益壮大和活跃,网上购物交易越来越频繁,一个网站支持多种语言在所难免,所以国际化和本地化在现在的网站中的作用越来越大,一个网站的使用量和搜索量有可能受国际化的影响一点。所以在当今做一个网站支持国际化和本地化非常重要。不仅网站,任何一个产品,如果支持国际化,那么他的使用价值就打打的提高了,所有下面我说一下怎么给一个网站做国际化和本地化,Windows Forms 怎么做国际化和本地化。

    Asp.net 网站国际化

    1. 新建一个Asp.net web 程序 ,然后添加一个web页面,如Login.aspx,然后在项目上右击add,添加Asp.net Fold 下面就由App_LocalResources 和 App_GlobalResouces,一般添加App_LocalResources,然后再在这个fold 下面添加资源文件,如果你想支持中文,就添加Login.aspx.zh-CN.resx, 如果你想支持英文,就添加Login.aspx.en-US.resx,添加好了之后就去给这几个资源文件中加入需要支持中英文的控件,如图所示:

    名称这一列相当于key值,后面的是value,key值是控件的ID和控件要显示的属性。

    在aspx页面需要如下代码:

    <%@ Page Language="C#" AutoEventWireup="true" UICulture="Auto" Culture ="Auto"  CodeBehind="Login.aspx.cs" Inherits="GlobalizationTest.Login" %>

    <div>
    <br />
    <asp:Label ID="lblName" runat="server" Text="" meta:resourcekey="lblName"></asp:Label>
    <br />
    <asp:Button ID="btnSave" runat="server" Text="" meta:resourcekey="btnSave" />
    <br />

    前面是一种方式

    这是第二种方式:
    <asp:Button ID="btnCancel" runat="server" Text="<%$ Resources:btnCancel.Text %>" />
    </div>

    然后运行此页面,之后修改浏览器的语言,就可以看到不同的语言下的网页内容。

    Windows Forms 国际化

    1.新建一个windows forms 项目,然后自动生成一个form1 的窗体, 然后如同上面添加几个不同的资源文件,里面值和上面的一样,如后在Form1.Designer.cs文件中修改对应的控件的属性,将显示属性全部为空,

    //
    // button1
    //
    this.button1.Location = new System.Drawing.Point(43, 151);
    this.button1.Name = "btnSave";
    this.button1.Size = new System.Drawing.Size(75, 23);
    this.button1.TabIndex = 3;
    this.button1.Text = "";
    this.button1.UseVisualStyleBackColor = true;

    然后在Form1.cs文件中加入一个Combox用来选择不同的语言,Combox 的项可以手动输入,也可以用代码写,

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {

    System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(comboBox1.Text);
    System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(comboBox1.Text);
    ApplyResource();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
    comboBox1.SelectedIndex = 1;
    }

    private void ApplyResource()
    {
     System.ComponentModel.ComponentResourceManager res = new ComponentResourceManager(typeof(Form1));
     foreach (Control ctl in Controls)
     {
     res.ApplyResources(ctl, ctl.Name);
     }
    }

    这样在运行起来之后可以选择不同的语言显示不同的语言的内容。

  • 相关阅读:
    uva 10918 Tri Tiling
    uva 10943 How do you add?
    uva 10518 How Many Calls?
    convert函数用法小结转载
    GridView 实现服务器端和客户端全选的两种方法
    vs2008和vs10以及Windows Phone自带的1000多个 Windows 系统使用的各种图标、光标和动画文件
    添加滚动条的几个样式未完待续
    asp.net页面绑定数据的方式未完待续
    读取数据库中空字段的处理方法如下
    遇到一段让我尴尬的代码,有增长了点见识。
  • 原文地址:https://www.cnblogs.com/baoyi/p/3534511.html
Copyright © 2011-2022 走看看