I have a custom UStruct that just looks like this:
#pragma once
#include "LocomotionSelectionData.generated.h"
USTRUCT()
struct FLocomotionSelectionData
{
GENERATED_BODY()
//UPROPERTY(VisibleInstanceOnly)
//TArray<FString> Names;
UPROPERTY(VisibleInstanceOnly)
FString Selected;
};
I then have a IPropertyTypeCustomization for customizing this structure and I get the IPropertyHandle for this property by doing this in CustomizerHeader:
uint32 NumChildren;
StructPropertyHandle->GetNumChildren(NumChildren);
for (uint32 ChildIndex = 0; ChildIndex < NumChildren; ++ChildIndex)
{
const TSharedRef< IPropertyHandle > ChildHandle = StructPropertyHandle->GetChildHandle(ChildIndex).ToSharedRef();
if (ChildHandle->GetProperty()->GetName() == TEXT("Selected"))
{
SelectedPropertyHandle = ChildHandle;
}
}
The problem is that as soon as I do this:
SelectedPropertyHandle->SetValue(FString("AAAAH"));
The entire property window disappears. Why is this happening?