Как сохранить свойство пользовательского элемента управления в настройках приложения? - PullRequest
0 голосов
/ 26 апреля 2019

Я создал простой пользовательский элемент управления, состоящий из 3 элементов:

2 переключателя и панель макета таблицы, также известная как Да или Нет.

Я создал логическое свойство «Значение», которое изменяется в зависимости от установленного переключателя.

ОБНОВЛЕНИЕ 1: я добавил этот элемент управления для формирования и привязки свойства «Значение» к настройкам, а в коде управления добавил логику, чтобы определить, какое радио следует проверять, но после сохранения настроек и перезагрузки формы ни один из переключателей не проверяется.

Как мне достичь этого эффекта с наименьшими усилиями.

Ниже кода:

public partial class YesOrNoControl : UserControl
{
    public YesOrNoControl()
    {
        InitializeComponent();
        LoadValue();
    }

    [Description("Sets the value of Control"), Category("Behavior"), DefaultValue(false), Browsable(true)]
    public bool Value { get; set; }

    void LoadValue()
    {
        if (Value)
        {
            YesButton.Checked = true;
        }
        else
        {
            NoButton.Checked = true;
        }
    }

    private void YesButton_Click(object sender, EventArgs e)
    {
        Value = true;
    }

    private void NoButton_Click(object sender, EventArgs e)
    {
        Value = false;
    }
}

Ответы [ 2 ]

0 голосов
/ 29 апреля 2019

Мне удалось решить мою проблему. Я изменил свойство «Значение», чтобы получить значение из настройки приложения (специально созданной для этой цели), и установил значение в ту же настройку приложения. В конце сеттера я добавил сохранение настроек приложения. Это решает основную проблему, но это своего рода обходной путь, а не верный ответ на проблему. Ниже изменен код свойства:

public bool Value
{
    get
    {
        return Properties.Settings.Default.YesOrNoControlValue;
    }
    set
    {
        Properties.Settings.Default["YesOrNoControlValue"] = value;
        Properties.Settings.Default.Save();
    }
}
0 голосов
/ 26 апреля 2019

Вы можете определить настройки приложения в IDE (в настройках проекта). Затем вы можете управлять настройками, используя пространство имен Properties.Settings .

Настройки загружаются автоматически во время выполнения, вы можете сохранить настройки, вызвав метод Save ().

Дополнительные ссылки: Использование настроек приложения и настроек пользователя

Настройки приложений для WinForms

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...