private async Task LoadConfig() { string json = null; bool ok = ApplicationData.Current.LocalSettings.Values.TryGetValue("config", out object temp); if (ok) { json = temp.ToString(); } if (string.IsNullOrEmpty(json)) { SettingObject setting = SettingObject.GetDefaultSetting(); json = await JsonHelper.JsonSerializeAsync(setting); } var config = await JsonHelper.JsonDeserializeAsync <SettingObject>(json); if (config.General == null) { config.General = new GeneralSetting(); } //UWP string descPath = Path.Combine(Windows.ApplicationModel.Package.Current.InstalledLocation.Path, "Res\\setting.desc.json"); var descConfig = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(descPath); JsonConfierViewModel = _jcrService.GetVM(JObject.FromObject(config), descConfig); }
protected async override void OnInitialize() { var config = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(_appServices.ConfigFilePath); string descPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase, "Resources\\Configs\\setting.desc.json"); var descConfig = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(descPath); JsonConfierViewModel = _jcrService.GetVM(config, descConfig); base.OnInitialize(); }
public override async void OnViewLoaded() { //var config = await JsonHelper.JsonDeserializeFromFileAsync<dynamic>(_appManager.SettingPath); //string descPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase, "Assets\\Configs\\setting.desc.json"); //var descConfig = await JsonHelper.JsonDeserializeFromFileAsync<dynamic>(descPath); var config = await _appManager.LoadConfig(); var desc = await _appManager.LoadDescConfig(); JsonConfierViewModel = _jcrService.GetVM(JObject.FromObject(config), desc as JObject); }
protected override async void OnInitialize() { if (firstLaunch) { firstLaunch = false; //读取json按对象重新保存一次。防止json格式不全 var Setting = await JsonHelper.JsonDeserializeFromFileAsync <SettingObject>(AppManager.SettingPath); await JsonHelper.JsonSerializeAsync(Setting, AppManager.SettingPath); } var config = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(AppManager.SettingPath); //string descPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase, "Res\\setting.desc.json"); var descConfig = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(AppManager.SettingDescFile); List <dynamic> audioSource = new List <dynamic>(); List <dynamic> displayMonitor = new List <dynamic>(); displayMonitor.Add(new { lanKey = "setting_displayMonitor_default", value = -1 }); audioSource.Add(new { lanKey = "setting_audioSource_mute", value = -1 }); string screenStr = await LanService.Get("setting_screen"); for (int i = 0; i < System.Windows.Forms.Screen.AllScreens.Length; i++) { displayMonitor.Add(new { lan = string.Format($"{screenStr} {i + 1}"), value = i }); audioSource.Add(new { lan = string.Format($"{screenStr} {i + 1}"), value = i }); } _jcrService.InjectDescObjs("$AudioSource", audioSource); _jcrService.InjectDescObjs("$DisplayMonitor", displayMonitor); JsonConfierViewModel = _jcrService.GetVM(config, descConfig); base.OnInitialize(); }
protected override async void OnInitialize() { if (firstLaunch) { firstLaunch = false; //读取json按对象重新保存一次。防止json格式不全 var Setting = await JsonHelper.JsonDeserializeFromFileAsync <SettingObject>(AppManager.SettingPath); await JsonHelper.JsonSerializeAsync(Setting, AppManager.SettingPath); } var config = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(AppManager.SettingPath); string descPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase, "Res\\setting.desc.json"); var descConfig = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(descPath); JsonConfierViewModel = _jcrService.GetVM(config, descConfig); base.OnInitialize(); }
protected override async void OnInitialize() { if (firstLaunch) { firstLaunch = false; //读取json按对象重新保存一次。防止json格式不全 var Setting = await JsonHelper.JsonDeserializeFromFileAsync <SettingObject>(AppManager.SettingPath); await JsonHelper.JsonSerializeAsync(Setting, AppManager.SettingPath); } var config = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(AppManager.SettingPath); //string descPath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.ApplicationBase, "Res\\setting.desc.json"); var descConfig = await JsonHelper.JsonDeserializeFromFileAsync <dynamic>(AppManager.SettingDescFile); List <dynamic> audioSource = new List <dynamic>(); List <dynamic> displayMonitor = new List <dynamic>(); displayMonitor.Add(new { lanKey = "setting_displayMonitor_default", value = -1 }); audioSource.Add(new { lanKey = "setting_audioSource_mute", value = -1 }); string screenStr = await LanService.Get("setting_screen"); for (int i = 0; i < System.Windows.Forms.Screen.AllScreens.Length; i++) { displayMonitor.Add(new { lan = string.Format($"{screenStr} {i + 1}"), value = i }); audioSource.Add(new { lan = string.Format($"{screenStr} {i + 1}"), value = i }); } _jcrService.InjectDescObjs("$AudioSource", audioSource); _jcrService.InjectDescObjs("$DisplayMonitor", displayMonitor); //多语言 DirectoryInfo languageFilesDir = new DirectoryInfo(AppManager.GetLangaugesFilePath()); var files = languageFilesDir.GetFiles("*.json"); if (files != null) { List <dynamic> languages = new List <dynamic>(); foreach (var file in files) { string cultureName = file.Name.Replace(file.Extension, ""); string text = await LanService.Get("language", cultureName); languages.Add(new { lan = text, value = cultureName }); } _jcrService.InjectDescObjs("$languages", languages); } JsonConfierViewModel = _jcrService.GetVM(config, descConfig); base.OnInitialize(); }