应用程序及用户设置

在设计时创建新设置的步骤

在“Solution Explorer”(解决方案资源管理器)中,展开项目的“Properties”(属性)节点。

在“Solution Explorer”(解决方案资源管理器)中,双击要在其中添加新设置的 .settings 文件。此文件的默认名称是 Settings.settings。

在应用程序会话之间更改设置值

有时,在编译和部署了应用程序后,可能需要在应用程序会话之间更改设置值。例如,可能需要更改连接字符串,使其指向正确的数据库位置。由于设计时工具在应用程序编译和部署后不可用,所以必须手动在文件中更改设置值。

在应用程序会话间更改设置值的步骤

使用 Microsoft 记事本或其他某种文本或 XML 编辑器,打开与应用程序关联的 <AssemblyName>.exe.config 文件。(该文件在Bin文件夹下的Debug或Release文件夹下)

找到要更改的设置条目。它应看似以下示例:

<setting name="Setting" serializeAs="String">
<value>这是设置值</value>
</setting>

为设置键入新值,然后保存该文件。

在运行时使用设置

运行时应用程序可以通过代码使用设置。具有应用程序作用域的设置值能够以只读方式进行访问,而用户作用域设置的值可以进行读写。在 C# 中可以通过 Properties 命名空间使用设置。

在运行时读取设置

可在运行时使用 Properties 命名空间读取应用程序作用域及用户作用域设置。Properties 命名空间通过Properties.Settings.Default 对象公开了项目的所有默认设置。编写使用设置的代码时,所有设置都会出现在 IntelliSense 中并且被强类型化。因此,举例来说,如果设置的类型为 System.Drawing.Color,则无需先对其进行强制类型转换即可使用该设置,如下例所示:

this.BackColor = Properties.Settings.Default.myColor;

在运行时保存用户设置

应用程序作用域设置是只读的,只能在设计时或通过在应用程序会话之间修改 <AssemblyName>.exe.config 文件来进行更改。然而,用户作用域设置却可以在运行时进行写入,就像更改任何属性值那样。新值会在应用程序会话持续期间一直保持下去。可以通过调用 Settings.Save 方法来保持在应用程序会话之间对用户设置所做的更改。这些设置保存在 User.config 文件中。

在运行时写入和保持用户设置的步骤

访问用户设置并为其分配新值,如下例所示:

Properties.Settings.Default.myColor = Color.AliceBlue;
            

如果要保持在应用程序会话之间对用户设置所做的更改,请调用 Save 方法,如以下代码所示:

Properties.Settings.Default.Save();

最新文章

  1. WCF简单使用(分别部署在控制台和IIS上)
  2. iOSview整体上移下移(点击键盘)
  3. ASP.NET MVC 4 异步加载控制器
  4. laravel队列
  5. Java SE 第十六讲----面向对象特征之继承
  6. 1027: [JSOI2007]合金 - BZOJ
  7. python 的经常使用时间操作,取得当前时间等
  8. 关于JAVA Project.waitfor()返回值是1
  9. maven指定部署的服务器类型
  10. Heavy Transportation POJ - 1797
  11. ssl证书 以及phpstudy配置ssl证书
  12. shell里连接数据库,将结果输出到变量
  13. BZOJ1004 HNOI2008Cards(Burnside引理+动态规划)
  14. ngularJs项目实战!05: 不同controller作用域之间通信的方式
  15. Easyradius 1.699更新,增加用户设备绑定、桥接用户管理功能
  16. sqlserver年月日转汉字大写--自定义函数--繁体
  17. vue 创建项目的命令
  18. LeetCode Minimum Time Difference
  19. ajax的原理及使用
  20. pg中的非varchar类型的模糊搜索

热门文章

  1. 16进制与utf-8
  2. Android开发 获取View的尺寸的2个方法
  3. Ansible-playbook简单应用的几个实例
  4. Python遇到的第一个问题
  5. 容斥原理——hdu1796
  6. 洛谷 2197 nim游戏
  7. js 面向对象几种数据模式
  8. Mybatis Plus 入坑(含最新3.X配置)
  9. 通过three.js实现简易3D打印模型切片展示
  10. leyou_05_文件上传