Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.09.2009, 17:45   #1
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию Как организовать настройки в программе Windows Forms

У меня программа Windows Forms, в которой можно вызвать диалоговое окно с настройками. Переменные настроек можно хранить разными способами, и я не знаю, какой более перспективный:

1) Как статические переменные OptionsForm (моя форма окна настроек)
2) Как обычные переменные OptionsForm (при этом использовать только один экземпляр этой формы).
3) Как переменные формы главного окна (проще доступ из основной части программы, но сложнее из OptionsForm)

Как это обычно реализовывается в программах?
ds.Dante вне форума Ответить с цитированием
Старый 28.09.2009, 18:24   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Обычно создается сериализуемый класс настроек. Очень удобно.
Hollander вне форума Ответить с цитированием
Старый 29.09.2009, 11:51   #3
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

А куда девать сериализованные данные? Передавать основной форме и десериализовывать? Проще передать напрямую.

Думаю, сериализация удобна только для сохранения настроек в файл
ds.Dante вне форума Ответить с цитированием
Старый 29.09.2009, 13:22   #4
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Цитата:
Сообщение от ds.Dante Посмотреть сообщение
Думаю, сериализация удобна только для сохранения настроек в файл
А где ты хочешь хранить настройки? В реестре? Мне кажется, что самый оптимальный вариант это файл. Т.к. с переносами не будет проблем.

Цитата:
Сообщение от ds.Dante Посмотреть сообщение
А куда девать сериализованные данные? Передавать основной форме и десериализовывать? Проще передать напрямую.
Ты открываешь форму, десериализуешь свой класс, делаешь что надо на основе данных полученного объекта. Когда открываешь форму настроек, то в её конструктор передаешь этот же объект и заполняешь на форме поля как надо. При изменении настроек изменяешь поля своего объекта, делаешь обновление чего надо и сохраняешь(сериализуешь) объект.
Hollander вне форума Ответить с цитированием
Старый 30.09.2009, 12:02   #5
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Думаю, такой вариант оправдан, если есть несколько окон настроек. В моем случае это излишнее усложнение.

Остановился на варианте №1 - хранение настроек в классе OptionsForm в переменных public static. Функции загрузки/сохранения настроек - в том же классе.

P. S. жаль, нельзя два раза подряд добавить плюс одному человеку.
ds.Dante вне форума Ответить с цитированием
Старый 15.10.2009, 16:13   #6
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Снова вернулся к этому вопросу.

Settings.settings - очень удобная штука для сохранения настроек, но они сохраняются в папку вроде C:\Documents and Settings\User\Local Settings\Application Data\Company\WindowsApplication1.ex e_Url_a50l1bck1cbdaniijnshbjoprjacu 0sv\1.0.0.0

Можно ли как-то сохранять настройки в папку самой программы?
ds.Dante вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как организовать поисковое поле Google в своей программе? SalasAndriy Общие вопросы C/C++ 5 31.03.2009 13:22
Windows Forms Application Cdevelop Общие вопросы .NET 1 15.03.2009 18:03