I added a toolbar option that allows the player to toggle read-only functionality. That is to say, while in Read-Only mode, the user cannot edit the property grid, trees, lists, etc. But while not in Read-Only mode, the user can has access to the aforementioned functionality.
That said, if AttributePropertyDescriptor uses a custom editor then it remains in the default Read-Only state. I extended CustomTypeDescriptorNodeAdapter where the properties are not cacheable, but the problem remains. Any suggestions how to resolve this issue?