У вас есть несколько вариантов сохранения введенных настроек - в файле конфигурации или в реестре, может быть, в базе данных (может быть, даже в «облаке», но я туда не пойду).
Перед сохранением настроек пользователь должен выполнить определенное действие (например, нажать кнопку Применить ) - вы не должны просто сохранять настройки, когда пользователь закрывает форму, так как в конечном итоге не очень хороший UX.
То, как вы сохраняете настройки, полностью зависит от вас - вы можете сохранить их в конфигурационном файле с парой имен и значений, вы можете использовать XML в конфигурационном файле или сохранить их в виде ключей и значений в известное место в реестре (или вы можете сохранить пары имя / значение в таблице базы данных).
Когда ваше приложение запускается в следующий раз, одна из задач запуска может состоять в том, чтобы проверить известное местоположение (будь то реестр или файл конфигурации) для параметров, а затем загрузить их в класс настроек. Убедитесь, что у вас есть логические значения по умолчанию для каждого параметра, если он никогда не был задан или по какой-то причине вы не можете прочитать его обратно. Затем класс параметров можно либо передать в каждую форму, чтобы он применил любые параметры релевантный, или это может быть статический класс (глобально видимый класс одного экземпляра), чтобы его можно было просто прочитать из любого места приложения.
Редактировать: после прочтения вашего комментария к другому ответу, вот еще один вариант, немного более продвинутый. Используйте класс настроек, о котором я упоминал ранее, но также используйте привязку - вы можете привязать ваш объект настроек непосредственно к вашей форме, поэтому любые введенные значения будут обновляться непосредственно в объект настроек без необходимости писать код для этого (при условии, что вы используете два способ связывания). «Потоковая передача» может быть достигнута путем сериализации объекта настроек в файл (или базу данных), я предлагаю вам взглянуть на XmlSerializer .