应用程序允许动态储存和提取属性设定以及其它信息,称之为「应用程序设定」。在设计阶段,您可以使用两种方式来加入应用程序设定:第一种方式是通过「项目设计器」的「设置」页面;第二种方式是通过窗体或控件的“属性”窗口以便将某一个属性直接绑定到某一个应用程序设定。在执行阶段,则可以通过ApplicationSettingsBase类别来存取应用程序设定。
完成应用程序的相关设定后,我们便可以使用ApplicationSettingsBase类别的属性与方法来访问它们,并替您的应用程序动态储存与提取属性设置和其它信息。基本上,ApplicationSettingsBase类别的各个属性是用来取得应用程序的设定, Reload方法则会重新加载最近一次储存的用户设置,至于Save方法则能够储存目前的用户设置。
接下来,我们透过简例来说明如何使用ApplicationSettingsBase类别:
Ø ApplicationSettingsBase类别最简单的用法就是去取得某一项应用程序设定的设置值,以下面这一个函式而言,它专门用来传回Liming这一个应用程序设定的设置值:
string ReadLiming()
{
return(Settings.Liming);
}
Ø 以下的程序代码示范如何更改Liming这一个应用程序设定的设置值:
void ChangeLiming(string newLiming)
{
Settings.Liming = newLiming;
}
请注意,只有范围为「用户」的应用程序设置才可以在执行阶段更改并储存。另外还要提醒大家,以上面的写法而言,您对应用程序设定Liming所做之变更的有效期间只限于应用程序的执行期间,如果您希望永久储存所做的变更,还必须再呼叫Save方法:
void ChangeLiming(string newLiming)
{
Settings.Liming. = newLiming;
appSettings.Save();
}
图表1-6
程序范例1
图表1-6所示者是程序范例DemoForm002.cs的执行画面,其特色在于,窗体每次都会开启于它上一次关闭时的位置上。要完成这样的设计非常简单,您只需借助于应用设定即可,说明如下:
Ø 如图表1-7所示,我们建立了一个名称为LastPosition且型别为System.Drawing.Point的应用程序设置来储存窗体关闭时的位置。由于我们要在执行阶段变更并储存此应用程序设置,因此它的范围必须是「用户」。
Ø 由我们希望窗体会开启它上一次关闭时的位置,因此必须如图表1-8所示,将窗体的Location属性绑定到应用程序设置LastPosition。
图表1-8
Ø 替窗体的Closing事件处理函数撰写下列程序代码,以便将窗体关闭时的位置赋给应用程序设定LastPosition:
private void CH3_DemoForm051_FormClosing(
object sender, EventArgs e)
{
mySetting.LastPosition =
new Point(this.Location.X, this.Location.Y);
mySetting.Save();
}
请注意,一定要先汇入名称空间CH3.Properties,才能够在程序中存取应用程序设置。