Hello guys,

It has been a great discovery that you can make your application fully customizable for the user just adding a PropertyGrid to a form and setting its SelectedObject property as My.Settings object.

VB Code:
  1. PropertyGrid1.SelectedObject = My.Settings

In order to make your application customizable you have to:

- Double Click on MyProject
- Select the 'Settings' tab
- Add all the settings you need by indicating:
- Name for the property
- Type (String, Color, Integer,ConnectionString...)
- Scope (The scope of the property: user/application)
- Value (The default value for this setting)
- Now you can add this properties to any control in your form:
- Click any control to select it
- In the propertygrid of the control go to:
(ApplicationSettings)>(PropertyBinding)
- Now select any property and bind it to one of the settings you created before.
- The last thing you have to do is adding a PropertyGrid to a form in your application and set:
VB Code:
  1. PropertyGrid1.SelectedObject = My.Settings

Thats all. The user can change the values of the settings on the propertygrid and all the controls within the application bound to these settings will show the changes.

This is all quite simple. My question is:

Is it possible to categorize the settings so you can group them in categories in the PropertyGrid? The user can see all the settings in the propertygrid, but can only change the properties which scope is "user". Is it possible to hide any of the properties?

Thanks!!