ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

WPF(MVVM) 利用资源字典实现中英文动态切换

2019-08-08 15:00:47  阅读:259  来源: 互联网

标签:resource MVVM 中英文 string xaml Current WPF 资源 字典


1、首先新建两个字典文件en-us.xaml、zh-cn.xaml。定义中英文的字符串在这里面。

2、将两个资源字典添加到App.xaml中,这里注意下,因为两个字典中有同样字符,如果没有动态更改,默认后添加的生效

    <ResourceDictionary  Source="/Resourcedictionaries\en-us.xaml"/>
    <ResourceDictionary  Source="/Resourcedictionaries\zh-cn.xaml"/>

3、 如何动态切换资源字典

 System.Windows.ResourceDictionary resource = new System.Windows.ResourceDictionary();//定义一个资源字典的类型
            string requestedCulture = @"/Resourcedictionaries\zh-cn.xaml";设置资源字典的路径
            resource.Source = new Uri(requestedCulture, UriKind.RelativeOrAbsolute);//将路劲存进资源字典
            Application.Current.Resources.MergedDictionaries.Remove(resource);删除相关字典
            Application.Current.Resources.MergedDictionaries.Add(resource);添加字典

4:如何调用资源字典的样式 前端我们一般DynamicResource +key

后台则是FindResource("资源字典的KEY")as string

但是在MVVM 模式下是得不到这个方法的 所以应该用到Application.Current.TryFindResource("资源字典的KEY) as string;这个方法来获取资源字典的内容

标签:resource,MVVM,中英文,string,xaml,Current,WPF,资源,字典
来源: https://www.cnblogs.com/zt199510/p/11321150.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有