@CYBERGAMER

Какой тип задать или как конвертировать?

Привет всем!

Я сделал через XML сохранение и получение настроек в приложении.
Если с текстом все вроде понятно, то какой тип мне указать для свойства цвета формы?

Я использую класс который записывает в XML настройки, пока только значение в label и там указана строка:

public string Name { get; set; }

Которая и получает эти данные и записывает их в xml. Если я к примеру меняю цвет фона формы, я хочу чтобы эта настройка также передавалась и сохранялась в xml и потом уже автоматически оставалась при новом открытии.

Вопрос: Мне нужно какой то определенный тип задать для сохранения параметров цвета или как то его конвертировать и потом уже передавать?

Сам класс:
public class CFG
    {
        public static CFG GetCFG()
        {
            CFG settings = null;
            String filename = PathCFG.CFGFile;

            if (File.Exists(filename)) // Используем настройки если они есть
            {
                using (FileStream fs = new FileStream(filename, FileMode.Open))
                {
                    XmlSerializer xser = new XmlSerializer(typeof(CFG));
                    settings = (CFG)xser.Deserialize(fs);
                    fs.Close();
                }
            }
            else settings = new CFG();
            return settings;
        }
        public void Save()
        {
            // Реализация сохранения настроек
            string filename = PathCFG.CFGFile;

            if (File.Exists(filename)) File.Delete(filename);
            using (FileStream fs = new FileStream(filename, FileMode.Create))
            {
                XmlSerializer xser = new XmlSerializer(typeof(CFG));
                xser.Serialize(fs, this);
                fs.Close();
            }
        }

        // То что будет использовать
        public string Name { get; set; }
        public ? Color { get; set; } // <---- это для цвета фона формы
    }


Код формы:
public partial class Form1 : Form
    {
        CFG _setting = null;
        public Form1()
        {
            InitializeComponent();
            _setting = CFG.GetCFG();
            _initControls();
        }

        private void _initControls() // То что будет хранить и записывать CFG
        {
            label1.Text = _setting.Name;
        }

        private void Button1_Click(object sender, EventArgs e)
        {
             label1.Text = textBox1.Text;
            this.BackColor = Color.Red;
            /////////////////////////////////
            _setting.Name = label1.Text;
            _setting.Color = this.BackColor; // <-- От сюда забирает цвет
            _setting.Save();
        }
    }
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
@CYBERGAMER Автор вопроса
Сам нашел ответ, если кому нужно тут.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
ПРОФЭЛИТ Казань
от 100 000 до 170 000 ₽
GD Company Санкт-Петербург
от 120 000 до 150 000 ₽
Mystery Tag Новосибирск
от 80 000 до 110 000 ₽