Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Bending .NET PropertyGrid to your will with a Custom Type Editor

0.00/5 (No votes)
12 Jan 2004 1  
Example of using the propertybag class of Tony Allowatt in vb.net with a custom type editor

Sample Image - Propertygrid_Editor_demo.jpg

Introduction

I've had serious trouble doing these two things:

  • Using a propertygrid and having all of its properties (like the names of the properties, and description that is shown) dynamic, in VB.NET
  • Using Tony Allowat's classes (which solves the first problem) with a custom type editor

I finally managed to get things working ... and thought that others amongst you could be having the same problem as I ... So here it is, my working VB.NET version of Tony Allowatt's propertybag classes, implementing a custom type editor.

Background

I didn't write the code of the PropertyBag.vb file ... Tony Allowatt wrote these usefull classes for the propertygrid, but in C#. Read his article first! Bending the .NET PropertyGrid to Your Will

Using the code

I'm not going to explain much in here, as all the serious code has been explained by Tony Allowatt in his article. I only provide an example of how to use his classes with a custom editor.

Public Class MyOwnClass
 ' the class that will be shown in the propertygrid

 ' it has a property of typ MultiLineString

End Class 

Public Class MultiLineString
 ' this is the custom type we'll want to edit in the propertygrid

 ' it's just a class with 1 property, a string, but 

 ' we want a multiline editor for it


 ' ...

End Class

Public Class MultiLineStringEditor
 Inherits UITypeEditor
 ' ...

End Class

Public Class MultiLineStringConverter
 Inherits System.ComponentModel.TypeConverter
 ' ...

End Class

Public Class MultiLineStringEditorForm
 Inherits System.Windows.Forms.Form
 ' ...

End Class

Points of interest

Some interesting links:

History

  • 14-01-2004 - Initial Release

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here