我正在使用C#express 2008创建一个简单的Windows Forms应用程序。我是一位经验丰富的C ++开发人员,但是对于C#和.NET来说,我几乎是全新的。
我目前正在使用设置设计器和以下代码存储一些简单的应用程序设置:
// Store setting
Properties.Settings.Default.TargetLocation = txtLocation.Text;
...
// Restore setting
txtLocation.Text = Properties.Settings.Default.TargetLocation;
现在,我想将一个整数数组(int[])或一个整数列表(List< int >)存储为设置。但是,我不知道如何做到这一点。我已经搜索了文档,stackoverflow和google,但找不到关于如何执行此操作的详细说明。
基于发现的稀疏示例,我的直觉是我必须创建一个可序列化的类,该类可以包装我的数组或List,然后可以在设置设计器中使用该Type。但是,我不确定如何执行此操作。 问题来源于stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
还有另一种解决方案-需要一些手动编辑设置文件,但此后在VS环境和代码中工作正常。并且不需要其他功能或包装。
事实是,VS允许int[]默认情况下在设置文件中序列化类型-只是不允许您默认选择它。因此,创建一个具有所需名称的设置(例如SomeTestSetting),并将其设置为任何类型(例如string,默认情况下)。保存更改。
现在转到项目文件夹,然后使用文本编辑器(例如,记事本)打开“ Properties \ Settings.settings”文件。或者,您也可以通过在解决方案资源管理器中右键单击“->属性-> Settings.settings”,在VS中打开该文件。 ”,选择“打开方式...”,然后选择“ XML编辑器”或“源代码(文本)编辑器”。在打开的xml设置中找到您的设置(如下所示):
将“类型”参数从更改System.String为System.Int32[]。现在,本节将如下所示:
现在保存更改并重新打开项目设置-天哪!-我们具有类型为SomeTestSetting的设置System.Int32[],可以通过VS设置设计器(也可以是值)以及在代码中进行访问和编辑。