AutoCompleteCustomSource保存并加载

时间:2011-07-29 10:07:40

标签: c#

我使用带有AutoCompleteCustomSource的文本框。我想保存文本框中的所有条目,并在用户输入匹配值时自动填充它们。

当应用程序关闭时,重新打开这些值就会丢失。

到目前为止,我有一个像这样的代码

puclic AutoCompleteStringCollection emails ;
//OnFormCreate 
...
 emails = new AutoCompleteStringCollection();
...


//OnUserInteraction
...
 emails.Add(EMail);
...

如何保存并重新加载列表?

这是一个方便的功能,而不是一个关键的功能,所以我需要一个简单的代码:“少即是多”。

1 个答案:

答案 0 :(得分:2)

您可以轻松地将其另存为XML:

var xs = new XmlSerializer(typeof(AutoCompleteStringCollection));
using (var writer = new StreamWriter("emails.xml"))
{
    xs.Serialize(writer, emails);
}

从XML加载列表:

var xs = new XmlSerializer(typeof(AutoCompleteStringCollection));
using (var reader = new StreamReader("emails.xml"))
{
    emails = (AutoCompleteStringCollection)xs.Deserialize(reader);
}

您也可以将其保存在项目的用户设置中