BindWidget variable is null (source code, debug)

//NewInventoryGrid.h

	UPROPERTY(EditDefaultsOnly, Category = "WidgetVariable")
	TSubclassOf<UUserWidget> WNewItemWidget = nullptr;

	UNewItemwidget* newitemwidget;

//NewInventoryGrid.cpp
void UNewInventoryGrid::RefreshInventory()
{
	//...
			newitemwidget = CreateWidget<UNewItemwidget>(this, WNewItemWidget);

			if (newitemwidget)
			{
				newitemwidget->Tilesize = TileSize;
				newitemwidget->ItemObj = ele.Key;
				newitemwidget->Refresh();
			}
}

//NewItem.h
#include "CoreMinimal.h"
#include "Blueprint/UserWidget.h"

#include "Runtime/UMG/Public/UMG.h"
#include "Runtime/UMG/Public/UMGStyle.h"
#include "Runtime/UMG/Public/Slate/SObjectWidget.h"
#include "Runtime/UMG/Public/IUMGModule.h"
#include "Runtime/UMG/Public/Blueprint/UserWidget.h"

#include "NewItemwidget.generated.h"
class OPENWORLDRPG_API UNewItemwidget : public UUserWidget
{
	GENERATED_BODY()
public:
	UPROPERTY(BlueprintReadOnly)
	UNewItemObject* ItemObj;
	UPROPERTY(BlueprintReadOnly)
	float Tilesize;
	UPROPERTY(BlueprintReadOnly)
	FVector2D widgetsize;
	//...
	UPROPERTY(BlueprintReadOnly, Category = "WidgetVariable", meta = (BindWidget))
	USizeBox* BGSizeBox;

	UPROPERTY(BlueprintReadOnly, Category = "WidgetVariable", meta = (BindWidget))
	UBorder* BGBorder;

	UPROPERTY(BlueprintReadOnly, Category = "WidgetVariable", meta = (BindWidget))
	UImage* ItemIcon;

asdfasdf

i put NewItem widget template in NewInventoryGrid widget.
but still bindwidget variable is null.