.NET
2.0中,WinForm应用程序的配置已经非常方便。默认情况下,我们可以利用Properties文件夹里默认的Settings.setting文件进行Application和User两个层级配置信息的设置。在Settings.setting里进行的修改保存后,均自动在后部cs文件里自动生成相关代码,同时在应用程序配置文件(app.config)里存储相关信息。比如,我们在TestWinForm项目里对Settings.setting进行如下修改:
保存后,Settings.Designer.cs文件自动增加如下代码:
同时,app.config也发生了变化:
1
<?xml version="1.0" encoding="utf-8" ?>
2
<configuration>
3
<configSections>
4
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
5
<section name="TestWinForm.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
6
</sectionGroup>
7
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
8
<section name="TestWinForm.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
9
</sectionGroup>
10
</configSections>
11
<applicationSettings>
12
<TestWinForm.Properties.Settings>
13
<setting name="Server" serializeAs="String">
14
<value>localhost</value>
15
</setting>
16
<setting name="Port" serializeAs="String">
17
<value>2121</value>
18
</setting>
19
</TestWinForm.Properties.Settings>
20
</applicationSettings>
21
<userSettings>
22
<TestWinForm.Properties.Settings>
23
<setting name="UserName" serializeAs="String">
24
<value>brooks</value>
25
</setting>
26
<setting name="CreateDate" serializeAs="String">
27
<value>2006-05-01</value>
28
</setting>
29
</TestWinForm.Properties.Settings>
30
</userSettings>
31
</configuration>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
要在具体代码中使用配置信息就非常非常的方便了。
1
private void button1_Click(object sender, EventArgs e)
2
}
2
OK,鬼扯了这么多,用意在于让我们再熟悉下.NET2.0的配置。现在,我们不满足他所提供的默认配置,于是我们创建了自己的一个Demo用的配置类 FtpSetting。在WinForm应用程序里,一切配置类都得继承自 ApplicationSettingsBase 类。
1
sealed class FtpSettings : ApplicationSettingsBase
2
}
2
如果要使用上述配置类,可以用:
1
private void button2_Click(object sender, EventArgs e)
2
}
2
好,似乎还在鬼扯。这个Tip已经进入尾声了,主题正式登场。:) 我们在使用上述 FtpSetting 配置时,当然要先进行赋值保存,然后再使用,后面再修改,再保存,再使用。
1
private void button2_Click(object sender, EventArgs e)
2
}
2
嗯。已经Save了,你可能会在应用程序文件夹里找不到它到底保存到哪里去了。由于我们是用UserScope的,所以其实该配置信息是保存到了你的Windows的个人文件夹里去了。比如我的就是 C:\Documents and Settings\brooks\Local Settings\Application Data\TestWinForm目录了。哈~当作Tip吧,免得大伙一时找不到Save后的配置文件。