Using c++ to show in blueprint ListView -> Entry Widget Class

Getting closer (I think), the new User Widget.

#pragma once

#include "CoreMinimal.h"
#include "Blueprint/UserWidget.h"
#include "Blueprint/IUserObjectListEntry.h"
#include "Components/TextBlock.h"
#include "BuildingListItem.generated.h"

UCLASS(Blueprintable, BlueprintType)
class GAMEUI_API UBuildingListItem : public UUserWidget, public IUserObjectListEntry
{
    GENERATED_BODY()
public:
    UBuildingListItem(const FObjectInitializer& ObjectInitializer) :
        Super(ObjectInitializer)
    {}

    UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "BuildingData", meta = (BindWidget)) UTextBlock* mType;
    UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "BuildingData", meta = (BindWidget)) UTextBlock* mCount;
    UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "BuildingData", meta = (BindWidget)) UTextBlock* mHeight;
    UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "BuildingData", meta = (BindWidget)) UTextBlock* mConstructionFactor;
    UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "BuildingData", meta = (BindWidget)) UTextBlock* mBasement;

    virtual bool IsListItemSelectable() const { return false; }
protected:
    virtual void NativeOnListItemObjectSet(UObject* ListItemObject) override;
};

The item class

#pragma once

#include "CoreMinimal.h"
#include "BuildingSummaryItem.generated.h"

UCLASS()
class GAMEUI_API UBuildingSummaryItem : public UObject
{
	GENERATED_BODY()
public:

    FString mType;
    FString mCount;
    FString mHeight;
    FString mConstructionFactor;
    FString mBasement;
};

The blue print for it:

However the List View doesn’t like the new UBuildingListItem. I can add it as the Entry Widget Class. I seem to be missing something with the implementation of the IUserObjectListEntry.

image

Any more thoughts would be great.