WPF国际化(多语言)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace WpfInternationalization
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            var appResource = App.Current.Resources.MergedDictionaries;
            foreach (ResourceDictionary item in appResource)
            {
                if (item.Source.ToString() == "Language/en-us/Tip.xaml")
                {
                    return;
                }
                if (item.Source.ToString() == "Language/zh-cn/Tip.xaml")
                {
                    appResource.Remove(item);
                    break;
                }
            }
            ResourceDictionary resdic=new ResourceDictionary();
            resdic.Source=new Uri("Language/en-us/Tip.xaml",UriKind.Relative);
            appResource.Insert(0, resdic);

        }

        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            var appResource = App.Current.Resources.MergedDictionaries;
            foreach (ResourceDictionary item in appResource)
            {
                if (item.Source.ToString() == "Language/zh-cn/Tip.xaml")
                {
                    return;
                }
                if (item.Source.ToString() == "Language/en-us/Tip.xaml")
                {
                    appResource.Remove(item);
                    break;
                }
            }
            ResourceDictionary resdic = new ResourceDictionary();
            resdic.Source = new Uri("Language/zh-cn/Tip.xaml", UriKind.Relative);
            appResource.Insert(0, resdic);
        }
    }
}
时间: 2024-11-05 12:16:13

WPF国际化(多语言)的相关文章

iOS 国际化多语言设置 xcode7

iOS 国际化多语言设置 方式一: 1. 在storyboard中创建好UI,然后在 project 里面  Localizables 栏目里面,添加你需要的语言:默认是Englist; 比如这里我添加了 简体中文 2.添加完之后,原来的Main.storyboard 就会多了一个国际化的语言配置文件 3. 点击 Main.strings 文件,就可以在这里配置中文的语言:里面自动添加现在storyboard上面创建好的UI控件的代码,直接在这里修改即可:此时sotyboard上设计的理解为 英

iOS 学习笔记六 【APP中的文字和APP名字的国际化多语言处理】

今天为新手解决下APP中的文字和APP名字的国际化多语言处理, 不多说了,直接上步骤: 1.打开你的项目,单机project名字,选中project,直接看图吧: 2.创建Localizable.strings文件 (名字必须为:[Localizable.strings]) (改国际化的app名字一样步骤,[InfoPlist.strings]) 创建后的名字:现在你可能没有左边的那个三角,等下就有了,别急哈! 3.看图,找到途中位置:添加就行,可以不要base, 4.添加完就可以看到左边的黑三

php gettext方式实现UTF-8国际化多语言(i18n)

转自:http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/08/09/2132603.html 近 来随着i18n(国际化)的逐渐标准化,我也来讲一讲在PHP中如何实现国际化支持.跟其他程序语言一样,在 PHP 也可以利用 gettext 套件写作 i18n 程序,实现 NLS(Native Language Support) 国际化支持,具体请参考官方文档(http://www.gnu.org/software/gettext/manu

[Spring]Spring Mvc实现国际化/多语言

1.添加多语言文件*.properties F64_en_EN.properties详情如下: F60_G00_M100=Please select data. F60_G00_M101=Are you sure you want to delete? F60_G00_M102=The data is changed. Do you want to save it ? 2.配置springMVC配置文件 <bean id="messageSource" class="o

yii2 api接口 实现国际化多语言设置

1) 在 /config/main.php 下添加如下代码: 'components' => [ 'language' => 'zh-CN', 'i18n' => [ 'translations' => [ '*' => [ 'class' => 'yii\i18n\PhpMessageSource', 'basePath' => '@application/messages', //application根据自身项目进行修改 'fileMap' =>[ '

【Android】国际化(多语言)

1.Android 中要实现国际化比较简单. 字符串国际化:只要在 res 文件夹下新建对应语言的 values 文件夹就好了, 如,英语环境下的,文件夹命名为:values-en 美国英文环境:values-en-rUS 中文环境为:values-zh 大陆地区中文环境: values-zh-cn 在 eclipse 下新建 Android 项目时,会在 res 目录下自动创建一个默认语言环境的文件夹 : values 当某一个资源没有在语言环境的对应的资源集合中找到时,就会使用 values

【android基础知识】【国际化及语言选择】

参考源码:http://download.csdn.net/detail/barryhappy/7176709 将使用support.v7的项目修改了一下,变成了一个不使用actionbaractivity而是activity的.减少报错. http://download.csdn.net/detail/mcdullsin/8290923 一.在说多语言的时候首先说说如何减少“hard code” 什么是“hard code”,例如:java文件中直接使用了汉字字符串等.正确做法是将它放在资源文

Pyqt 国际化多语言支持

国际化是指在代码设计上加入能方便的移植到其他国家和地区的特性, 给Pyqt 添加国际化支持需要五步 一.编写GUI.py 在要被翻译的text上用tr方法括起来 # -*- coding: utf-8 -*- from PyQt4 import QtCore, QtGui class Mwindow(QtGui.QDialog): def __init__(self): super(Mwindow, self).__init__() self.resize(100, 60) self.down1

java:jsp: ResourceBundle国际化多语言

java提供了一个资源类java.util.ResourceBundle来试下多国语言版本.其实ResourceBundle只是一个抽象的类,她有两个子类:ListResourceBundle,和,PropertyResourceBundle.前一个子类需要编写不同的国家语言信息放置在对象类中,下面将实例演示,后一个子类是需要编写不同国家语言的文件后缀为.properties()来存放语言信息,这部分内容读者可以在国际化标签以及Struts时了解到.例如,存放在RES_zh_EN.propert