great project! Only one small thing I've missed: settings values with the enter button.
It's pretty simple to implement in case someone needs it.
Add the PrviewKeyDown Event in the constructor of PropertyGrid.cs:
PreviewMouseDown += new MouseButtonEventHandler(PropertyGrid_PreviewMouseDown);
PreviewKeyDown += new KeyEventHandler(PropertyGrid_PreviewKeyDown);
and add the eventhandler:
Wasn't tested thoroughly but it seems to work! Cheers
void PropertyGrid_PreviewKeyDown(object sender, KeyEventArgs e)
if (e.Key == Key.Enter && e.OriginalSource is TextBox)
this.SelectedProperty.Value = ((TextBox)e.OriginalSource).Text;