It is possible.
The steps I followed are:
1. Create an attribute class (inherited from Attribute) for the
DisplayName
2. Create a class that inherits from PropertyDescrip tor and override
the
DisplayName property to return what you want to appear in the
PropertyGrid
3. Create a class that implements the ICustomTypeDesc riptor interface.
Implement the GetProperties functions to return a
PropertyDescrip torCollection with instances of the class defined in
step 2.
4. Finally, create the class you want to display in the PropertyGrid
and
make sure it inherits from the class defined in step 3 above. You can
also
combine steps 3 and 4 by by just implementing the ICustomTypeDesc riptor
interface in your class.
When you assign an instance of that class to the SelectedObject
property of
the PropertyGrid, the grid will show your custom property names.
The following article helped me immensely:
http://www.codeproject.com/cs/miscct...opertygrid.asp