/// <summary> /// Charge les paramètres depuis le fichier XML (ConfigFilePath) /// </summary> public void Load() { XmlDocument doc = new XmlDocument(); try { // Vérification du fichier XML if (File.Exists(ConfigFilePath)) { doc.Load(ConfigFilePath); // Effacement des listes pendingParameters.Clear(); persistentParameters.Clear(); // Lecture et création des objets dans le dictionnaire persistant foreach (XmlElement anotherElement in doc.DocumentElement.ChildNodes) { string paramName = anotherElement.Attributes[_NAME_ATTRIBUTE].Value; string paramValue = anotherElement.Attributes[_VALUE_ATTRIBUTE].Value; if (paramName != null) { persistentParameters.Add(paramName, paramValue); } } } else { _SetDefaultValues(); Save(); } // Gestion des événements if (_SettingsLoaded != null) { _SettingsLoaded.Invoke(this, null); } } catch (Exception ex) { _log.Error("Unable to load XML config file: " + ConfigFilePath, ex); throw (ex); } }
/// <summary> /// Fires the SettingsLoaded event. /// </summary> protected virtual void OnSettingsLoaded(object sender, SettingsLoadedEventArgs e) { _onSettingsLoaded?.Invoke(this, e); }