Finally after a little bit more debugging(1 hr of Debugging) with my father I found my mistake.
Earlier :
for (const FString& ServerName : ServerNames)
{
UServerRow* Row = CreateWidget<UServerRow>(World, ServerRowClass);
if (!ensure(Row != nullptr)) return;
uint32 i = 0; // All mistake was in this line
Row->ServerName->SetText(FText::FromString(ServerName));
Row->Setup(this, i);
++i;
ServerList->AddChild(Row);
}
correct one :
uint32 i = 0;
for (const FString& ServerName : ServerNames)
{
UServerRow* Row = CreateWidget<UServerRow>(World, ServerRowClass);
if (!ensure(Row != nullptr)) return;
Row->ServerName->SetText(FText::FromString(ServerName));
Row->Setup(this, i);
++i;
ServerList->AddChild(Row);
}
Now I am again changing my repo to be private