How to update blueprint property through editor code

Thank you for your reply. Adding PreEditChange and PostEditChange did not resolve the issue. As far as I am aware, properties of instances in the level should inherit changes from the blueprint only if they have not been modified manually in level instance.

I have made a little video to better illustrate the issue:

Assuming the following two properties in my C++ Actor class
vars

First, I toggle the boolean through the blueprint editor, and the changes reflect properly in the scene instance.

Then, I change the string content using my editor plugin. This uses the code I posted in the original post to update the property value. As you can see, the value in the level does not update when I modify the string. However, when I compile the blueprint, the level editor does detect that the instance property value is different from the blueprint, and shows the little revert button to revert to blueprint value.

I am clearly missing a piece of code to propagate the changes to the instance, but it is not clear to me by browsing Unreal’s blueprint editor code what this code is.

Additionally, it may also be possible that my plugin is editing the property on the wrong class. I referenced the property editing class from this post:

Any insights are very welcome.