可通过使用 PropertyGrid 对象的用户设置属性填充 My.Settings
控件,创建用户设置的属性网格。
注释
为了使此示例正常工作,应用程序必须配置其用户设置。 有关详细信息,请参阅管理应用程序设置(.NET)。
My.Settings
对象将每个设置公开为一个属性。 属性名称与设置名称相同,属性类型与设置类型相同。 设置的范围决定属性是否为只读。应用程序范围的设置属性是只读的,而用户范围的设置属性是可读写的。 有关详细信息,请参阅 My.Settings 对象。
注释
不能在运行时更改或保存应用程序范围设置的值。 仅当创建应用程序(通过 项目设计器)或编辑应用程序的配置文件时,才能更改应用程序范围设置。 有关详细信息,请参阅管理应用程序设置(.NET)。
此示例使用控件 PropertyGrid 访问对象的用户设置属性 My.Settings
。 默认情况下,PropertyGrid 显示 My.Settings
对象的所有属性。 但是,用户设置属性具有属性 UserScopedSettingAttribute 。 本示例将BrowsableAttributes的PropertyGrid属性设置为UserScopedSettingAttribute,以仅显示用户设置属性。
添加用户设置属性网格
将“工具箱”中的 PropertyGrid 控件添加到应用程序的设计图面,假定为此处
Form1
。属性网格控件的默认名称为
PropertyGrid1
。双击设计视图
Form1
打开表单加载事件处理程序的代码。将
My.Settings
对象设置为属性网格的选定对象。PropertyGrid1.SelectedObject = My.Settings
配置属性网格以仅显示用户设置。
' Attribute for the user-scope settings. Dim userAttr As New System.Configuration.UserScopedSettingAttribute Dim attrs As New System.ComponentModel.AttributeCollection(userAttr) PropertyGrid1.BrowsableAttributes = attrs
注释
若要仅显示应用程序范围设置,请使用属性 ApplicationScopedSettingAttribute 而不是 UserScopedSettingAttribute。
可靠的编程
应用程序关闭时保存用户设置。 若要立即保存设置,请调用 My.Settings.Save
该方法。 有关详细信息,请参阅 How to: Persist User Settings in Visual Basic.