Properties edited in PostEditChangeProperty do not update details panel

I know this was posted a while ago, but in case anyone else ends up here, I just managed to get this working by overloading these three methods, and performing the update before calling into Super:

#if WITH_EDITOR
	virtual void PostEditChangeProperty(struct FPropertyChangedEvent& InChangeEvent) override;
	virtual void PostCDOCompiled(const FPostCDOCompiledContext& Context) override;
	virtual void PostTransacted(const FTransactionObjectEvent& TransactionEvent) override;
#endif // WITH_EDITOR

EDIT: Further Follow up:

Some more testing, and it appears to work with just overloading this method:

virtual void PostEditChangeProperty(struct FPropertyChangedEvent& InChangeEvent) override;

However, I ran into issues, where in my case I was assigning a dynamic material instance to the Class Default Object’s static mesh whenever I updated the Blueprint Default. This would cause a Save error to the instances in the editor, (something along the lines of referencing an external private property instance).

I added the following flag check to make sure I wasn’t doing it on the CDO. (Checking owner as this was a actor component).

if (GetOwner() && GetOwner()->HasAnyFlags(RF_ClassDefaultObject)) return;

That seems to be stable so far… :crossed_fingers:

2 Likes