Я пытаюсь реализовать простую функцию сохранения-загрузки в своем приложении, которая сохранит состояния различных элементов графического интерфейса в моем приложении (текстовые поля, флажки, раскрывающиеся меню и т. д.) в файл .txt с пользовательским именем, а затем загрузить их обратно в следующий раз, когда пользователь запустит мое приложение. Я не хочу использовать My.Settings, потому что это портативное приложение, и поэтому файл настроек должен быть рядом с исполняемым файлом. Также потому, что мое приложение является редактором, и настройки должны быть привязаны по имени к текущему файлу, с которым работает пользователь. Разрешения на запись не проблема. Я хочу закодировать это таким образом, чтобы мне нужно было только записать имена элементов графического интерфейса, которые будут упомянуты в моем коде один раз, предпочтительно в списке. Вот так (псевдокод):
'list
Dim ElementsToSave() as Object = {
Textbox1.text,
Checkbox1.Checked,
DropDownMenu1.SelectedItem,
.....
}
'save-load sub
Sub SaveLoad(Elements as Object, mode as string)
If mode = "save" then
For each Element in Elements
??? 'save each element state to .txt file
Next
If mode = "load" then
For each Element in Elements
??? 'load each element state from .txt file
Next
End if
End sub
'call
SaveLoad(ElementsToSave, "save")
'or
SaveLoad(ElementsToSave, "load")
Я надеюсь, что это передает то, чего я пытаюсь достичь. Может ли кто-нибудь дать какие-либо советы о том, как заставить эту работу работать, пожалуйста?
РЕДАКТИРОВАТЬ: я забыл упомянуть. Было бы очень хорошо, если бы каждое значение в файле .txt сохранялось с ключом, который относится к определенному элементу, так что, если я добавлю в свое приложение больше элементов GUI в будущем или переделаю их, это сохранение load sub всегда будет выбирать правильное значение из файла .txt для определенного элемента.