public void SaveSettings()
{
if (m_persistSettings)
{
// Ensure that settings category is specified.
if (string.IsNullOrEmpty(m_settingsCategory))
throw new ConfigurationErrorsException("SettingsCategory property has not been set");
// Save settings under the specified category.
ConfigurationFile config = ConfigurationFile.Current;
CategorizedSettingsElementCollection settings = config.Settings[m_settingsCategory];
settings[nameof(Username), true].Update(m_username);
settings[nameof(Password), true].Update(m_password);
settings[nameof(SerializationFormat), true].Update(m_serializationFormat);
settings[nameof(StatusMessageFilter), true].Update(m_statusMessageFilter);
settings[nameof(Username)].Scope = SettingScope.User;
settings[nameof(Password)].Scope = SettingScope.User;
settings[nameof(Password)].Encrypted = true;
config.Save();
}
}