Вам придется создать отдельный класс для ваших предустановленных настроек. Затем вы можете сохранить его в виде списка в настройках.
Допустим, у вас есть предустановленный класс, содержащий значения ваших настроек:
public class Preset
{
public int MaxPower { get; set; }
public int AllowedRotations { get; set; }
}
Вы можете в одном месте получить все эти настройки вот так:
var presets = JsonConvert.DeserializeObject<List<Preset>>(Properties.Settings.Default.Presets);
И вы бы сохранили настройки примерно так:
List<Preset> presets = null;
if (Properties.Settings.Default.Presets == null)
presets = new List<Preset>();
else
presets = JsonConvert.DeserializeObject<List<Preset>>(Properties.Settings.Default.Presets);
presets.Add(new Preset() { AllowedRotations = 1000, MaxPower = 200});
Properties.Settings.Default["Presets"] = JsonConvert.SerializeObject(presets);
Properties.Settings.Default.Save();
Я думаю, вы также можете иметь какой-то уникальный идентификатор для этих объектов, чтобы вы могли различать одну предустановку от другого.
ПРИМЕЧАНИЕ : Я использую конвертер Json и сохраняю список объектов как JSON.