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);
/