如何以编程方式保存用户设置?

Iva*_*an 2 .net c# settings

我有一个按钮,打开窗口颜色托盘,然后为某些虚拟工作室中的选定元素分配选择颜色.用户首先在鼠标单击时选择元素,并根据元素ID分配颜色.因此,每次单击按钮时,都会更改相同或不同元素的颜色.元素ID是从代理获取的,如果鼠标单击某个元素,则会触发该代理.颜色设置按钮的代码如下:

private void Btn_Choose_Color_Click(object sender, RoutedEventArgs e)
{
    uint id_selected = (uint)selected_element; //get id of selected element from clickintocallback

    //open windows color dialog
    System.Windows.Forms.ColorDialog my_dialog = new System.Windows.Forms.ColorDialog();
    my_dialog.ShowDialog();

    //get the color from windows dialog
    int red = my_dialog.Color.R;
    int green = my_dialog.Color.G;
    int blue = my_dialog.Color.B;

    //create cinector color object and pass rgb values from windows dialog
    ByteRGBColor desired_color = new ByteRGBColor((byte)red, (byte)green, (byte)blue); //assign color statically

    for (int i = 0; i < all_color_elements_in_loaded_studio.Count; i++)
    {
        uint id_current = all_color_elements_in_loaded_studio.ElementAt(0).colorElementID; //get id of current element in a loop

        if(id_current == id_selected) //compare selected and current element
        {
            //all_color_elements_in_loaded_studio.ElementAt(i).colorElementColor = test_color; //set the test color
            instance.SetStudioColorElement(id_current, desired_color); //assign the color to the element
            break;
        }
    }

    //after we choose a color
    Btn_Pick_Element_Clicked = false;
    Btn_Choose_Color.IsEnabled = false;
}
Run Code Online (Sandbox Code Playgroud)

现在,我的问题是如何在分配到用户设置后保存元素ID及其颜色?我知道我可以转到属性 - >设置并在那里手动定义用户设置,但这里必须以某种方式以编程方式完成.然后,如何加载这些设置?

我将不胜感激任何帮助?

Cha*_*thJ 8

Properties.Settings.Default.myColor = Color.AliceBlue;
Run Code Online (Sandbox Code Playgroud)

得到

this.BackColor = Properties.Settings.Default.myColor;
Run Code Online (Sandbox Code Playgroud)

保存

如果要在应用程序会话之间保留对用户设置的更改,请调用Save方法,如以下代码所示:

Properties.Settings.Default.Save();
Run Code Online (Sandbox Code Playgroud)

参考