当前位置: 首页 > news >正文

北京 个人网站 备案贵州建设网老网站

北京 个人网站 备案,贵州建设网老网站,四川省建设工程招标网官网,北京机建网站English | 简体中文作为 TerminalMACS 的一个子进程模块 - WPF管理端#xff0c;目前搭建框架部分功能#xff1a;本地化、国际化、主题色修改等。导航目录1.框架已添加功能说明1.1. 国际化、本地化1.2. Metro风格主窗体1.3. 动态更换主题色2.关于TerminalMACS及本WPF管理端 … English | 简体中文作为 TerminalMACS 的一个子进程模块 - WPF管理端目前搭建框架部分功能本地化、国际化、主题色修改等。导航目录1.框架已添加功能说明1.1. 国际化、本地化1.2. Metro风格主窗体1.3. 动态更换主题色2.关于TerminalMACS及本WPF管理端  2.1. TerminalMACS  2.2. WPF管理端3.关于项目开源4.参考资料1. 框架已添加功能说明1.1. 国际化、本地化源码放在Github上希望分享给更多人所以添加了国际化功能默认支持中、英、日三国语言按照已有套路扩展其他语言也方便看下面的效果:本项目TerminalMACS的WPF管理端使用的资源字典存储翻译文件其他方式还有资源文件、微软官方的国际化方案未研究等。下面是翻译文件截图三个资源文件使用需要注意1.选择一个默认文件比如en.xaml英文作为默认语言文件需要将生成操作属性设置为 页 设置截图如下2.其他语言文件设置生成操作属性为内容设置截图如下3.需要将默认语言资源文件添加到App.xaml中其他语言不用Application.ResourcesResourceDictionaryResourceDictionary.MergedDictionariesResourceDictionary SourceI18nResources/en.xaml/ ...... 4.在项目初始化时即加载主窗体之前需要设置当前语言加载操作系统语言或者程序上次运行时的配置即本地化功能本项目采用Prism作为MVVM及模块化框架所以在CreateShell方法调用切换语言方法App.xaml.csprotected override Window CreateShell() { LanguageHelper.SetLanguage(); return Container.ResolveMainWindow(); } 5.国际化即在运行期间动态切换语言在主窗体中添加语言切换配置菜单在菜单的Tag属性中配置语言文件名如下MainWindow.xamlMetro:MetroMenuItem Header{DynamicResource MainMenu_Language} Metro:MetroMenuItem Header中文 Tagzh-CN ClickChangeLanguage_Click/Metro:MetroMenuItem HeaderEnglish Tagen ClickChangeLanguage_Click/Metro:MetroMenuItem Header日本語 Tagja ClickChangeLanguage_Click/ /Metro:MetroMenuItem 后台代码切换语言private void ChangeLanguage_Click(object sender, RoutedEventArgs e){ string language (sender as MetroMenuItem).Tag.ToString(); LanguageHelper.SetLanguage(language);} 具体的语言设置方法封装如下LanguageHelper.csprivate const string KEY_OF_LANGUAGE language;public static void SetLanguage(string language ){ if (string.IsNullOrWhiteSpace(language)) { language ConfigHelper.ReadKey(KEY_OF_LANGUAGE); if (string.IsNullOrWhiteSpace(language)) { language System.Globalization.CultureInfo.CurrentCulture.ToString(); } }string languagePath $I18nResources\{language}.xaml; try { var lanRd Application.LoadComponent(new Uri(languagePath, UriKind.Relative)) as ResourceDictionary; var old Application.Current.Resources.MergedDictionaries.FirstOrDefault(o o.Contains(AppTitle)); if (old ! null) { Application.Current.Resources.MergedDictionaries.Remove(old); } Application.Current.Resources.MergedDictionaries.Add(lanRd); ConfigHelper.SetKey(KEY_OF_LANGUAGE, language);var culture new System.Globalization.CultureInfo(language); System.Globalization.CultureInfo.CurrentCulture culture; System.Globalization.CultureInfo.CurrentUICulture culture; } catch { }} 管理端当前语言配置在App.config文件appSettings节点下第一次发布时值为空程序为读取操作系统语言进行本地化设置然后更新language节点主窗体动态切换时也会更新此节点App.configadd keylanguage value/ 1.2. Metro风格主窗体使用开源控件库 AduSkin 的 MetroWindow 作为主窗体基类方便的将菜单添加到标题栏效果如下代码中使用添加命名空间xmlns:Metroclr-namespace:AduSkin.Controls.Metro;assemblyAduSkin 修改主窗体基类 Window 为 Metro:MetroWindow标题栏菜单添加部分代码如下Metro:MetroWindow.MenuMetro:MetroTitleMenu Height40Metro:MetroTitleMenuItem Header{DynamicResource MainMenu_Contact} Icon/Images/Contact.pngMetro:MetroMenuItem HeaderQQ CommandAduOpenLink:ControlCommands.OpenLink CommandParameterhttp://wpa.qq.com/msgrd?v3uin632871194siteqqmenuyes/Metro:MetroMenuItem Header{DynamicResource MainMenu_QQGroup} CommandAduOpenLink:ControlCommands.OpenLinkCommandParameterhttps://jq.qq.com/?_wv1027k50b36fD/Metro:MetroMenuItem Header{DynamicResource MainMenu_Email} CommandAduOpenLink:ControlCommands.OpenLinkCommandParametermailto:632871194qq.com //Metro:MetroTitleMenuItem ...... 1.3. 动态更换主题色程序运行过程中动态修改主题色效果如图配色菜单代码如下Metro:MetroColorPicker x:NameTheme Width50 Height20 Grid.Column1Background{StaticResource DefaultBrush}DefaultColor{StaticResource DefaultBrush} / 注意需要在后台注册颜色改变事件Theme.ColorChange delegate{ // Do not bind colors through XAML, unable to get notifications BorderBrush Theme.CurrentColor.OpaqueSolidColorBrush;}; 2. 关于TerminalMACS及本WPF管理端2.1. TermainMACS多终端资源管理与检测系统包含多个子进程模块目前开发了Xamarin.Forms客户端、WPF管理端、.NET Core WEB API服务端下一步继续完善WPF管理端。2.2. WPF管理端作为TerminalMACS系统的一个子进程模块目前只搭建了简单的框架未完添加了国际化、本地化、主题换色等功能Prism模块化功能待加。3. 关于项目开源1.开源项目地址https://github.com/dotnet9/TerminalMACS2.官方网站https://terminalmacs.com3.合作网站https://dotnet9.com4. 参考资料全球化和本地化https://docs.microsoft.com/zh-cn/dotnet/framework/wpf/advanced/globalization-and-localizationWPF国际化方式1之资源文件https://www.cnblogs.com/qwqwQAQ/p/11595454.html[WPF]本地化入门https://www.cnblogs.com/dino623/p/LocalizationWPF.htmlAduSkinhttps://github.com/aduskin/AduSkinHandyControlhttps://github.com/HandyOrg/HandyControl
http://www.sadfv.cn/news/173766/

相关文章:

  • 实惠的网站建设公司商淘软件
  • 网站访问拒绝企业网站模板 html
  • 流行用什么做网站东莞求职招聘信息网
  • 北京做网站电话dy刷粉网站推广马上刷
  • 用商城系统做教育网站网站建设论文伯乐在线
  • 建设部网站中天人建筑工程有限公司中山建设工程有限公司
  • 网站建设常见问题处理自建站是属于什么模式
  • 网站开店前的四项基本建设营销型网站建设企业营销型网站平台
  • 阜阳手机网站建设用户体验设计五要素
  • 怎么设置网站字体旅游攻略网站开发背景
  • 购物网站设计思路深圳摇号申请注册
  • 淘宝客建网站要钱的吗中国比较有名的公司
  • 网站调用优酷视频去除广告亚洲网站建设中
  • 公司网站模板上海黄页固定电话查询
  • 网站页面设计版权无锡新吴区建设环保局网站
  • 个人网站建设 实验报告建设营销型网站的优势
  • 东莞seo建站公司哪家好商家线上推广的平台都有哪些
  • 北京网站优化策略做网上水果网站的调查
  • 史先生 网站建设免费icp备案服务码
  • 网站开发云南字体设计软件 免费
  • 网站建设及维护服务器上海装修公司口碑哪家好
  • 沈阳seo建站合肥网站建设发布
  • 外国服务器的网站wordpress描述代码
  • 甘肃建设监理协会网站网站备案查询 优帮云
  • 做律师推广的网站有哪些wordpress 文章列表插件
  • 以网站建设为开题报告大中型网站开发流程
  • 公司网站.可以自己做吗广州公司网站制作招聘信息
  • 学校网站建设流程青岛网站建设兼职
  • 360网站运营免费做外贸的网站平台有哪些
  • asp网站优化访问速度北京市门户网站