我正在努力保存上次使用的設置,然後程序開始將其恢復。一切工作正常,但我只是不知道如何處理ListBox項目。如何將ListBox項目存儲到文件中並將其恢復回去?
指出一件事是我已經使用一個分隔符來存儲我的設置。處理這個問題時我感到很困惑。
這是我如何保存我的設置:
private void btnStart_Click(object sender, EventArgs e)
{
int interval = 0;
int plusMinus = 0;
int pause = 0;
int delay = 0;
int randomLine = 0;
if (cbPause.Checked == true) pause = 1;
if (cbDelay.Checked == true) delay = 1;
if (cbRandomLine.Checked == true) randomLine = 1;
interval = int.Parse(nudInterval.Value.ToString());
plusMinus = int.Parse(nudPlusMinus.Value.ToString());
lastUsed.Text =
interval + splitString +
plusMinus + splitString +
pause + splitString +
delay + splitString +
randomLine;
if (nudPlusMinus.Value == 0)
{
tmrInterval.Interval = int.Parse(nudInterval.Value.ToString());
}
else
{
Random random = new Random();
tmrInterval.Interval = random.Next(int.Parse(nudInterval.Value.ToString()) - int.Parse(nudPlusMinus.Value.ToString()), int.Parse(nudInterval.Value.ToString()) + int.Parse(nudPlusMinus.Value.ToString()));
}
WhenStarted();
tmrInterval.Start();
}
這是我找回它們在程序啓動:
public AutoTyper()
{
InitializeComponent();
tmrInterval.Tick += new EventHandler(Interval);
tmrDelay.Tick += new EventHandler(Delay);
tmrSpace.Tick += new EventHandler(Space);
lbMessage.SelectedIndexChanged += new EventHandler(lbMessage_SelectedIndexChanged);
txtMessage.TextChanged += new EventHandler(txtMessage_TextChanged);
SetInterval();
if (!lastUsed.EmptyFile())
{
string[] allSettings = lastUsed.Text.Split(splitChar, StringSplitOptions.None);
int settingCount = 0;
int settingNumber = 0;
foreach (string setting in allSettings) settingNumber++;
if (settingNumber == 5)
{
foreach (string setting in allSettings)
{
settingCount++;
if (settingCount == 1) nudInterval.Value = int.Parse(setting);
else if (settingCount == 2) nudPlusMinus.Value = int.Parse(setting);
else if (settingCount == 3) { if (setting == "1") cbPause.Checked = true; }
else if (settingCount == 4) { if (setting == "1") cbDelay.Checked = true; }
else if (settingCount == 5) { if (setting == "1") cbRandomLine.Checked = true; }
}
}
}
}
這是你在看什麼http://stackoverflow.com/questions/1700779/c-sharp-way-to-serialize-liststring-in-settings-containing-any-character-rege – Lloyd 2012-01-12 11:04:19
@Lloyd:I關於使用XML是空白的。 – HelpNeeder 2012-01-12 11:15:05
@HelpNeeder也許有其他方式,但這是最好的。 – Burimi 2012-01-12 12:05:28