2015-09-10 66 views
-1

我看了一些教程,其中沒有一個沒有工作......我甚至改變了我的Visual Studio從2015年,2010年,實在不行......在C#中保存用戶選項

這是代碼:

private void button1_Click(object sender, EventArgs e) 
{ 
    WindowsFormsApplication3.Properties.Settings.Default.label = label1.Text; 
    WindowsFormsApplication3.Properties.Settings.Default.Save(); 
} 

private void Form1_Load(object sender, EventArgs e) 
{ 

    label1.Text = WindowsFormsApplication3.Properties.Settings.Default.label; 
} 

In label1應用程序設置我做了一個設置:

name:label;類型:字符串;範圍:用戶;價值:可見;

當我在程序中按下按鈕時絕對沒有任何事情發生:

+1

的'Form1_Load'的'button1_Click'事件之前發生一點小毛病,所以標籤就不會更新,直到表單重新加載。除非您更改'label1'中的文本,否則您實際上並未進行任何更改。 – Ulric

+0

你如何保存選項? – Sean

+0

標籤是不可編輯的控件,因此如何在保存新值之前更改標籤的值? – MikeT

回答

0

我覺得你的期望可能是對什麼是應該發生的

public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     WindowsFormsApplication1.Properties.Settings.Default.Label = label1.Text + "!";//change the value 
     WindowsFormsApplication1.Properties.Settings.Default.Save(); //save the change 
     WindowsFormsApplication1.Properties.Settings.Default.Reload(); //instruct the form to reload the settings from the file 
     label1.Text = WindowsFormsApplication1.Properties.Settings.Default.Label; //update the label text to show the change 
    } 

    private void Form1_Load(object sender, EventArgs e) 
    { 
     label1.Text = WindowsFormsApplication1.Properties.Settings.Default.Label; // set the initial value 
    } 

這工作得很好