コード例 #1
0
        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);
        }
コード例 #2
0
        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();
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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();
        }
コード例 #5
0
        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();
        }
コード例 #6
0
        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();
        }