Hi Rudy.
Since you say this is intended behaviour, I wonder if you could explain what is wrong with my usage that is causing an assertion failure.
I have a UUserWidget-derived class, within which I have a few UPROPERTY references to embedded widget components, for example:
UPROPERTY(EditAnywhere)
class UComboBoxString* Box1;
I assign these properties in my widget’s blueprint construction event (with the variables from the components added in the designer), before invoking the Parent: Construct node.
Then in the c++ Construct_Implementation, I set up delegates on these widget components. When I add my user widget to a viewport, remove it, then add it a second time, I get an assertion failure within AddDynamic:
check( InvocationList[ CurFunctionIndex ] != InDelegate );
It appears that although the user widget is getting reconstructed, the embedded widget components persist, and as such I get the error from trying to bind the same method to the delegate a second time. Clearly there is an issue with this process, can you explain what is wrong with my approach? Thanks.