2

我想维护在给定 PC 上应用程序的所有用途中输入到 ComboBox 中的所有字符串的列表,用作该 ComboBox 的 AutoCompleteSource,即我在 ComboBox 中输入“Fred”,提交数据,关闭应用程序,重新打开应用程序,重新打开 ComboBox,键入“F”,接收建议“Fred”。

假设我已经有适当的代码来在内存中创建和维护这样的列表,并在将新元素输入到 ComboBox 等时向其中添加新元素,那么您建议在会话之间保存/加载此数据的最佳方法是什么?

可能的复杂因素:此应用程序将通过 OneClick 部署进行部署,并且每次应用程序启动时都会在线搜索更新。我希望如果应用程序更新,更新完成后列表仍然存在。

谢谢你的帮助。

4

2 回答 2

2

根据您的访问级别,将它们存储在平面文件中似乎是最简单的选择。

  • 要读取选项列表,请读取文件并返回一个空列表(如果不存在)。
  • 要添加项目,请创建文件(如果不存在),然后附加选项。

这意味着您不会在更新时发送空文件,因此数据可以保留。

看来您可以将文件放在数据目录中或使用独立存储

于 2009-04-07T14:26:15.483 回答
1

我会简单地使用内置的用户设置(我的项目>设置>选择“用户”作为设置范围);它们非常容易检索和更新。尽管我没有进行广泛的测试,但我相信它们会通过应用程序更新而保留下来。

您的应用程序是否使用数据库?如果是这样,那将是永久存储的另一种选择。

编辑
如果您决定使用“用户设置”选项,这里有一个新问题,用于解决这些设置和 ClickOnce 的问题。

于 2009-04-07T20:09:14.223 回答