Iterating the properties in a propertygrid - how?

I know this should be an easy thing, but for the life of me, I can't figure it out.

I need to iterate the properties and associated values in a propertygrid control. I don't know ahead of time what control the propertygrid will be attached to, so I simply want to run through each GridItem and get the property name and value.

This doesn't work, but just to give you an idea of what I want to do:

Dim pg As New PropertyGrid
pg.SelectedObject = New TextBox

For Each gi As GridItem in pg
  Debug.WriteLine(gi.PropertyName & "  = " & gi.PropertyValue)
Next

How the heck do I do this?

LVL 8
toddhdAsked:
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.

Erick37Commented:
Try this:

Imports System.ComponentModel
'----------------------------------------
...
'----------------------------------------

        Dim pg As New PropertyGrid
        Dim pd As PropertyDescriptor
        Dim pdc As PropertyDescriptorCollection

        pg.SelectedObject = TextBox1

        pdc = TypeDescriptor.GetProperties(pg.SelectedObject, True)

        For Each pd In pdc

            Debug.Write(pd.Name & " = ")
            Debug.WriteLine(pd.GetValue(pg.SelectedObject))

        Next

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
toddhdAuthor Commented:
Thanks, that was it exactly
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.