silverlight4语言的实现方法

1:在项目中,创建一个新文件夹资源,然后添加新的资源文件的文件夹appstring.resx。如果你创建了一个appstring.resx复制,将文件名更改为相应的语言名称。

如appstring.en-us.resx.and改变appstring公共资源的访问修饰符。



2:打开的appstring.resx CS文件看看,如果类的访问修饰符是公共的,如果没有,它会变成公共。

3:打开app.xmal文件和添加下面的代码使用资源文件的其他页面绑定角色内容。




4:那么这个资源文件可以在其他页面上使用,我在这里使用三种语言。



5:其次是语言转换。我使用本地存储的方式保存用户选择的语言,并创建一个新类来读取当前用户选择的语言。

复制代码代码如下所示:
公共类的配置
{
静态system.globalization.cultureinfo文化;
公共静态System.Globalization.CultureInfo CurrentCulture
{
得到
{

If (currentCulture = null)
{
尝试
{
system.io.isolatedstorage.isolatedstoragesettings appsetting = system.io.isolatedstorage.isolatedstoragesettings.applicationsettings;
如果(appsetting.contains(语言))
{
文化=新system.globalization.cultureinfo((字符串)appsetting {语言));
}
}
catch(例外E)
{
}

}
如果(文化= null)
{
文化=新system.globalization.cultureinfo(,);

}
回归文化;
}

{
文化=价值;
system.threading.thread.currentthread.currentculture =文化;
system.threading.thread.currentthread.currentuiculture =文化;

尝试
{
system.io.isolatedstorage.isolatedstoragesettings appsetting = system.io.isolatedstorage.isolatedstoragesettings.applicationsettings;
如果(appsetting.contains(语言))
{
appsetting {语言文化的名字=;
appsetting保存();
}
其他的
{
appsetting添加(语言。
}

}
catch(例外E)
{
}
}
}

}


这是开关按钮的代码。

复制代码代码如下所示:
private void button3_click(object sender,routedeventargs E)
{
configure.currentculture =新的CultureInfo(combobox1.selectionboxitem.tostring());
/ /如果(configure.currentculture.name = =zh CN)

/ / configure.currentculture =新的CultureInfo(en-US);
/