在项目中使用.settings文件

在项目中使用.settings文件

一、什么是.settings文件

.settings文件是专用于保存程序设置文件。当应用程序启动时,从.settings文件中读入程序设置;退出时,将程序的某些设置保存到.settings文件中,下次启动是可以再次从文件读取这些设置。

二、实例

1. 新建项目

启动VS2012,新建一个“Windows 窗体应用程序”,项目名称“WindowsFormsApplication1”

2. 为项目添加一个“设置文件”

解决方案管理中,在项目“WindowsFormsApplication1”上点鼠标右键-->添加-->新建项

在“常规”类别中,选择“设置文件”,文件名称为:WinApp.settings。点“添加”,如下图

在项目会添加两个新的文件app.config和WinApp.settings,如下图所示。

3. 编辑WinApp.settings

4. 在程序中使用WinApp.settings

using System.Windows.Forms;

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

// 窗口的标题

this.Text = WinApp.Default.appTilte;

// 窗口位置

this.Left = WinApp.Default.x;

this.Top = WinApp.Default.y;

// 窗口尺寸

this.Width = WinApp.Default.width;

this.Height = WinApp.Default.height;

// 起始位置设置为手动

this.StartPosition = FormStartPosition.Manual;

}

///

/// 窗口关闭前,保存窗口位置和尺寸

///

///

protected override void OnFormClosed(FormClosedEventArgs e)

{

base.OnFormClosed(e);

// 保存窗口位置

WinApp.Default.x = this.Left;

WinApp.Default.y = this.Top;

// 保存窗口尺寸

WinApp.Default.width = this.Width;

WinApp.Default.height = this.Height;

// 保存

WinApp.Default.Save();

}

}

}

5. 运行程序,在桌面上移动窗口并改变窗口的大小,然后退出。再次运行程序,窗口会显示在上次退出时的位置,并且大小与上次退出时一样。

三、结论

1. 在项目中添加 .settings文件后,设计器自动添加存取这个文件的便利类。在上面的例子中,这个类名称为 “WinApp”(在文件WinApp.Designer.cs中)

2. 如下图所示的设置文件保存位置。注意:不同Windows用户或者同一个用户以不同身份(以管理员身份或普通用户身份)运行上面的程序后,将会生成不同版本的文件。

如下图所示,同一个用户ROCK分别以“普通用户”和“管理员用户”运行上面程序后,系统自动保存了两个版本的设置文件。

3. 在app.config中保存着WinApp.settings的“默认值” —— 以app.config文件中……的值用作为第一次生成.settings文件的值。

0

0

400

240

设置文件测试程序

4. 需要频繁保存程序设置时,使用.settings文件来动态保存程序设置更方便,而且,由于配置文件保存位置的特殊行,写入时不会遇到权限问题。