В моем проекте C# есть три разных numericupdown, все три из которых имеют одинаковые свойства и одинаковые значения:



Все три связаны одним и тем же методом — numericUpDown1_ValueChanged:
private void numericUpDown1_ValueChanged(отправитель объекта, EventArgs e) { применитьAnimationTimeout(); } Значения всех трех изменяются при запуске с помощью метода CheckAnimationTimeout.
private void checkAnimationTimeout() { numericUpDown1.Value = Properties.Settings.Default.animationResizeTop; // изменение размера времени numericUpDown2.Value = Properties.Settings.Default.animationDockBottom; // изменение размера времени numericUpDown3.Value = Properties.Settings.Default.animationSettingResize;//animationSettingResize; // изменение размера, установка времени } Все три имеют свое значение и, следовательно, соответствующие настройки, измененные с помощью метода applyAnimationTimeout().
private void applyAnimationTimeout() { Properties.Settings.Default.animationResizeTop = (int)numericUpDown1.Value; // присваиваем значение правильному NumericUpDown Properties.Settings.Default.animationDockBottom = (int)numericUpDown2.Value; // присваиваем значение правильному NumericUpDown Properties.Settings.Default.animationSettingResize = (int)numericUpDown3.Value; // присваиваем значение правильному NumericUpDown Свойства.Настройки.По умолчанию.Сохранить(); } Все три свойства имеют одинаковый тип и область действия.

Тем не менее, единственное значение, значение которого изменяется правильно, — это numericUpDown1. Эти свойства изменяются только внутри этих методов, а метод checkAnimationTimeout вызывается только при запуске формы внутри check().

Если я принудительно запускаю checkAnimationTimeout и applyAnimationTimeout во время выполнения, это работает, пока я не закрою форму. Но когда я снова открываю его, он сбрасывает значения только этих двух числовых значений вверх и вниз до минимума, как будто введенное мной значение неверно. Не существует другого метода, который бы изменял эти свойства.
Я пробовал повторно добавлять эти числовые значения вверх и вниз, принудительно устанавливать их значения на основе метки в форме, несколько раз переписывать код, копировать numericUpDown1, но ничего — всегда одна и та же проблема, всегда с одними и теми же двумя свойства и всегда с одними и теми же двумя элементами управления. Потому что, если бы я установил их для загрузки первого свойства, это сработало бы. Я понятия не имею, что является причиной этого и что я могу сделать, чтобы это исправить.