`
wyf
  • 浏览: 424944 次
  • 性别: Icon_minigender_1
  • 来自: 唐山
社区版块
存档分类
最新评论

Silverlight实现多语言

阅读更多

首先添加一个主资源文件Text.resx 设置生成代码 public,然后添加Text.zh-cn.resx,Text.en-us.resx等等资源文件设置不生成代码。

程序会自动生成ResourceManager类,

添加代码:

 System.Globalization.CultureInfo c = new System.Globalization.CultureInfo("en-us");
            System.Threading.Thread.CurrentThread.CurrentCulture = c;// new System.Globalization.CultureInfo("zh-CN");
            System.Threading.Thread.CurrentThread.CurrentUICulture = c;// new System.Globalization.CultureInfo("zh-CN");

 设置本地化

获取资源文件中的key value

    this.txtName.Text = SL_ResourceDemo.Resource.Text.name;
            this.txtSex.Text = SL_ResourceDemo.Resource.Text.sex;

 

注意在生成的xap 文件中不包含这些资源文件的dll文件。解决方法:

 

找到silverlight工程文件打开会看到

    <ProjectGuid>{DC4A1B28-8511-491D-B209-D2A31A8501E7}</ProjectGuid>
    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>Shareidea.Web.UI.Control.Workflow.Designer</RootNamespace>
    <AssemblyName>ShareDesigner</AssemblyName>
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
    <SilverlightApplication>true</SilverlightApplication>
    <SupportedCultures>
	en-us,zh-cn
    </SupportedCultures>
    <XapOutputs>true</XapOutputs>
    <GenerateSilverlightManifest>true</GenerateSilverlightManifest>
    <XapFilename>ShareDesigner.xap</XapFilename>
    <SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
    <SilverlightAppEntry>design.App</SilverlightAppEntry>
    <TestPageFileName>TestPage.html</TestPageFileName>
    <CreateTestPage>true</CreateTestPage>
    <ValidateXaml>true</ValidateXaml>
    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
    <SccProjectName>SAK</SccProjectName>
    <SccLocalPath>SAK</SccLocalPath>
    <SccAuxPath>SAK</SccAuxPath>
    <SccProvider>SAK</SccProvider>
    <FileUpgradeFlags>

 注意这里:

  <SupportedCultures>
	en-us,zh-cn
    </SupportedCultures>

 这样生成xap文件就会包括 这两个语言dll文件了。

 

可以将本地化设置放到独立存储中,下次打开的时候直接读取独立存储中的数据

 public class Configure
    {
        static System.Globalization.CultureInfo currentCulture;
        public static System.Globalization.CultureInfo CurrentCulture
        {
            get
            {

                if (currentCulture == null)
                {
                    try
                    {
                        System.IO.IsolatedStorage.IsolatedStorageSettings appSetting = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings;
                        if (appSetting.Contains("language"))
                        {
                            currentCulture = new System.Globalization.CultureInfo((string)appSetting["language"]);
                        }
                    }
                    catch (Exception e)
                    {
                    }

                }
                if (currentCulture == null)
                {
                    currentCulture = new System.Globalization.CultureInfo("en-us");

                }
                return currentCulture;
            }
            set
            {
                currentCulture = value;
                System.Threading.Thread.CurrentThread.CurrentCulture = currentCulture;
                System.Threading.Thread.CurrentThread.CurrentUICulture = currentCulture;

                try
                {
                    System.IO.IsolatedStorage.IsolatedStorageSettings appSetting = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings;
                    if (appSetting.Contains("language"))
                    {
                        appSetting["language"] = currentCulture.Name;
                    }
                    else
                    {
                        appSetting.Add("language", currentCulture.Name);
                    }

                }
                catch (Exception e)
                {
                }
            }
        }
    }

 

分享到:
评论

相关推荐

    Silverlight如何支持多语言 源代码

    Silverlight如何支持多语言 源代码

    silverlight多语言的实现

    两种方式实现多语言: 1、通过资源文件的绑定; 2、通过继承新的控件和字典;

    Silverlight本地化多语言

    实现Silverlight本地化多语言.很简单的实现办法。大家相互学习。

    Silverlight4 多语言实现的方法

    介绍了Silverlight4 多语言实现的方法,有需要的朋友可以参考一下

    拓网超大文件上传组件

    拓网大文件上传组件是基于Silverlight框架,采用多线程、断点续传技术开发的一套大文件在线上传WEB组件,是国内首个实现在线WEB断点续传的解决方案。使用本组件可以轻松将几G文件上传到服务器,良好的兼容性和通用的...

    C#运用WPF实现游戏动画制作

    转入正题,网上已经有很多关于如何创建WPF/Silverlight动画的教程,但是均为使用Blend工具制作,或直接写在xaml代码内的动画,这样往往造成很多朋友误以为其实WPF/Silverlight不就是MS的Flash?诚然,如果您真的像...

    C#调用C++底层代码

    此外,SilverLight作为WPF的一个轻量级的版本,比WPF削减了很多功能。 比如,WPF支持直接在XAML中绑定触发来触发动画,而SilverLight就只能通过托管代码或者Javascript来进行。 另外,WPF直接支持3D效果和3D镜头...

    IronPython2.7.4

    IronPython 是一种在 NET 和 Mono 上实现的 Python 语言,由 Jim Hugunin(同时也是 Jython 创造者)所创造。1.0 版于2006年9月5日发布。随后,在 2007 年,开发者决定改写构架,使用动态类型系统以让更多脚本语言能...

    基于c++实现的球球大作战游戏源码+操作说明.zip

    所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.Net Core、.NET Compact Framework和Microsoft Silverlight 及Windows Phone。 Visual Studio是...

    VisualC# 2008 HOW TO PROGARM 源码

    包括LINQ特性、使用LINQ to SQL的数据库、WPF GUI和图形、WCF Web服务、ASP.NET3.5与ASP.NET AJAX、Silverlight 2技术、支持LINQ的新语言特性、隐式类型局部变量和自实现属性。  本书可作为高等院校相关专业的编程...

    Visual C# 2008大学教程(第3版).pdf

    隐式类型变量、扩展方法、自实现 属性、匿名类型、lambda表达式 面向对象缡程 继承、多态、接口、部分类、 OOP案例研究 GUI、图形和多媒体 WinForms、WPF、XAML、事件处理 WPF图形/多媒体、Silverlight 数据结构 ...

    Visual C# 2008大学教程(第3版) 第二部分

    隐式类型变量、扩展方法、自实现 属性、匿名类型、lambda表达式 面向对象缡程 继承、多态、接口、部分类、 OOP案例研究 GUI、图形和多媒体 WinForms、WPF、XAML、事件处理 WPF图形/多媒体、Silverlight 数据结构 ...

    Csharp.2008编程参考手册.part1.rar

    C#2008与.NET Framework 3.5提供了许多新的引以为豪的功能,从而... ◆使用Silverlight 1.0和silverlight 2构建RIA应用程序的方式  本书读者对象:本书适合于正在寻求全面介绍C#语言的具有不同开发经验的C#开发人员。

    P13_Blazor项目模板讲解ThreeBlazor2020_1_11.rar

    Blazor与Flex和silverlight有点像,Flex和silverlight有一些大厂反对,不支持flex和silverlight Blazor使用Web Assembly标准,Web Assembly是一种业界标准,所有浏览器都支持它,类似于Java字节码,各种语言都可以...

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    1.1.3 要点3:ASP.NET支持多语言 1.1.4 要点4:ASP.NET运行在公共语言运行库内 1.1.5 要点5:ASP.NET是面向对象的 1.1.6 要点6:ASP.NET支持所有的浏览器 1.1.7 要点7:ASP.NET易于部署和配置 1.2 ASP...

    MSDN杂志2008年四月刊

    工具箱: 记录 Web 应用程序错误,了解 LINQ 及更多内容 了解如何记录 Web 应用程序错误以更好地监控运行状况,如果考虑使用 LINQ 要阅读的信息以及 Scott 本月建议阅读的博客。 CLR 全面透彻解析: 及早并经常评量...

    CLR.via.C#.(中文第3版)(自制详细书签)Part1

    13.8 实现多个具有相同方法名和签名的接口 13.9 用显式接口方法实现来增强编译时类型安全性 13.10 谨慎使用显式接口方法实现 13.11 设计:基类还是接口? 第14章 字符、字符串和文本处理 14.1 字符 14.2 ...

    CLR.via.C#.(中文第3版)(自制详细书签)

    13.8 实现多个具有相同方法名和签名的接口 13.9 用显式接口方法实现来增强编译时类型安全性 13.10 谨慎使用显式接口方法实现 13.11 设计:基类还是接口? 第14章 字符、字符串和文本处理 14.1 字符 14.2 ...

Global site tag (gtag.js) - Google Analytics