How to iterate thru all user settings

My app (VB.Net 2005 Beta 2) has an options screen which allows the user to change their preferences. Typically, each setting is bound to a checkbox or radio button.
How can I check if a particular setting has been changed?  (I don't want to put code under every control.)
How can I iterate through all user settings to check if any have changed?
Ideally I would like a generic routine something like...

For each UserSetting in My.Settings
  if UserSetting is different to SavedSetting then
    ChangedFlag = True
  EndIf
Next

Maybe I could get the original settings in the form load, and compare to the final settings in form close. Which objects would I use to do this?

I am specifically after code samples here.  Thanks, Alister
AlisterNAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

AlisterNAuthor Commented:
In case anybody is interested, this is what I have found...

Dim stn As System.Configuration.SettingsProperty
For Each stn In My.Settings.Properties
    Console.WriteLine(stn.Name)
    Console.WriteLine(stn.PropertyType)
    Console.WriteLine(My.Settings.Item(stn.Name))
Next

Note that to get the VALUE of the setting you need to access the Item property of My.Settings. I would have thought that the value of the setting should be available with stn.Value.
DarthModCommented:
PAQed with points (500) refunded

DarthMod
Community Support Moderator

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.