Dynamic scene components at edit time

What I am try to do:

  1. In an actor subclass, define an int32 EditDefaultsOnly property
  2. Using AActor::PostEditChangeProperty(), dynamically remove or create instances of a USceneComponent based on the new value of the int32 property.
  3. Allow a designer to modify those newly created components in the blueprint editor under the component tree.

I’ve hit a roadblock with the last step, I create the component using NewObject(…) and attach it to my actor’s root component via AttachToComponent(…), however the SCSEditor doesn’t refresh the component tree, since that normally occurs when a new component is added via the component dropdown within the UI-specific code.

If I add a component using the dropdown, the tree is refreshed and my dynamically created components are visible.
Is there a clean way to force the SCSEditor to rebuild its tree? The avenue I see forward at the moment is to subclass FBlueprintEditor and register with FCoreUObjectDelegates::OnObjectPropertyChanged to force the refresh from there, want to make sure I’m not doing something wrong.