我想保存並加載到.NET設置文件(app.config)的組合框項目列表。C#:保存並從app.config文件加載組合框項目列表
用下面的代碼,我想加載和保存存儲在ArrayList中的數據cboCollection。
private void Form1_Load(object sender, EventArgs e)
{
if (Settings.Default.cboCollection != null)
this.comboBox1.Items.AddRange(Settings.Default.cboCollection.ToArray());
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
ArrayList arraylist = new ArrayList(this.comboBox1.Items);
Settings.Default.cboCollection = arraylist;
Settings.Default.Save();
}
當我打開項目的屬性頁面,然後選擇設置選項卡,我想用來存儲{ 「myItem1」, 「myItem2」, 「myItem3」}在一個ArrayList cboCollection。不幸的是,沒有這種類型的System.Collections.ArrayList可供選擇。我做錯了什麼?
你把這段代碼從[這裏](http://stackoverflow.com/questions/376622/c-how-do-you-save-a -list-of-items-like-a-combobox-to-the-net-settings-file)並詢問爲什麼它不起作用。對不起,你應該閱讀這個答案,瞭解你做錯了什麼,我不會告訴你的。 –
是的,我讀過它,但遺憾的是我並沒有完全理解它。它說_如果你使用ArrayList,它的所有元素的類型必須是可序列化的(具有[Serializable]屬性或實現System.Runtime.Serialization.ISerializable。)_。我添加了'使用System.Runtime.Serialization'。我需要在哪裏獲得[Serializable]屬性? – Boozzz
cboCollection是這個人制作的對象的名稱,你應該實現你的並在其上添加[Serializable]。 –