If I use a Text Box control with UIType Editor Edit Style.Drop Down it sort of works, but non Drop Down events don't happen, even tho' one attaches a delegate say to the Text Box Validating event.The Property Grid control has been missing in WPF since it's release and sadly it's still missing!There have been various attempts by third parties to provide one and I cant speak for the commercial offerings but I find the ones in the open source space to be quite lacking and incomplete.Most projects I found on codeplex are still in beta!I really like the api exposed by the original Property Grid which I have been using for years now but it's a Winforms control. The main issue for me with the Winforms version of the Property Grid is that it's not styleable.
And a small correction to the article, it's not entirely true that you cannot style the property grid.
Modal, then I need a container control in which to put the Text Box and a location within the container (I want it at the cell location).
I thought I'd get close by having a keydown handler, examining the attributes of Selected Item to see if it requires a Smart Editor, but I still can't figure out where to put the Smart Editor, I tried Context Strip Menu Location, but that's miles away, there's a Tool Tip location but I can't figure out how to attach a Tool Tip to a PG cell, so it's always off the planet (i.e. Of course where I'd like to put in is at the cell location in the scrollable control on which the PG rides - but that info seems beyond reach.
Once you edit the properties and hit the Ok button, it will display the changes in the object via a messagebox. What will throw you off is if your referencing System. I found that not setting height and width explicitly for the control makes its load time slow and at most awkward even.
Nothing fancy, but you can see some simple mvvm, creation of a simple custom value converter for the complex type “Address” exposed as a property and a the creation of a simple collection editor to allow editing the “Vehicles” collection property. Update: 4/30/2011 A gotcha I forgot to mention is that you'll have to reference System. The fix is to be explicit with the height and width.