C# 保存ArrayList以供下次程序执行时使用

C# 保存ArrayList以供下次程序执行时使用,c#,arraylist,save,settings.settings,C#,Arraylist,Save,Settings.settings,我有一个c程序,它将用户输入的数据保存到一个隐藏的xml文件中。我希望能够存储特定xml文件的文件名,这样当用户退出程序并再次输入时,他们可以从下拉列表中选择该文件的名称,并将存储到该xml文件中的数据加载到另一个表单中。我曾考虑将文件名保存到数组列表中,因为它们是动态的,但我很难找到保存或保留此数组列表中的值的方法,以便在用户进入应用程序时将其分配给表单上的组合框。有人有什么建议或想法吗?如果要将XML文件保存到磁盘,为什么不在应用程序开始时读取目录中的文件列表,然后用检索到的文件名填充下拉列

我有一个c程序,它将用户输入的数据保存到一个隐藏的xml文件中。我希望能够存储特定xml文件的文件名,这样当用户退出程序并再次输入时,他们可以从下拉列表中选择该文件的名称,并将存储到该xml文件中的数据加载到另一个表单中。我曾考虑将文件名保存到数组列表中,因为它们是动态的,但我很难找到保存或保留此数组列表中的值的方法,以便在用户进入应用程序时将其分配给表单上的组合框。有人有什么建议或想法吗?

如果要将XML文件保存到磁盘,为什么不在应用程序开始时读取目录中的文件列表,然后用检索到的文件名填充下拉列表

将.settings文件添加到项目中。 在“设置编辑器”中,为隐藏文件列表提供名称,例如HiddenFiles 选择StringCollection类型 选择范围默认情况下它是用户 在值编辑器中提供值。 现在,您的设置将通过以下方式从代码中获得:

combobox.DataSource = Settings.Default.HiddenFiles;
如果要在此列表中添加另一个文件名,该文件名将在该用户稍后启动应用程序后可用:

if (Settings.Default.HiddenFiles == null)
    Settings.Default.HiddenFiles = new StringCollection();
Settings.Default.HiddenFiles.Add(pathToFile);
Settings.Default.Save();

下面是在运行时生成异常的代码

Settings1.Default.eventSaveArrayList.AddclubNameTextBox.Text.ToString++日期字符串;
设置1.Default.Save

它不允许我为设置选择StringCollection类型。很抱歉,我对这些设置完全陌生。添加.settings文件是什么意思?我正在解决方案资源管理器的属性下拉列表下的Settings.Settings目录中执行此操作。否。右键单击项目名称。选择添加>新建项目。在“常规”节点下,选择“设置文件”。StringCollection届时将可用。谢谢,是的,我这样做了,但是当我执行导致文件路径添加到HiddenFiles设置的操作时出现错误。您会遇到什么样的异常?顺便说一句,您不需要在字符串类型的属性上调用.ToString。对象引用未设置为对象的实例。它说它是以下代码行:Settings1.Default.eventSaveArrayList.AddclubNameTextBox.Text++日期字符串;若并没有通过编辑器提供默认文件名,那个么应该创建集合。查看我的更新答案。太棒了,它现在可以工作了!现在我需要找到一种方法让它通过编辑器检查是否有默认文件名,这样它就不会每次都创建一个新的数组集合。我只需要在用户第一次使用该程序时创建一个新的数组集合。我能自己解决这个问题,所以不需要额外的帮助。再次感谢