Plugin, add Snew button to Snew box after being created?

Micheal Noland gave me some pointers,
It is almost working, but wanted to post before getting some sleep in case someone reads it,
It loads and adds buttons now, but the manual reload crashes the editor if I were to use the Lambda.
Also need to fix a warning "declaration hides in class member because the strings are higher up…

TSharedRef<SDockTab> FConsoleModule::OnSpawnPluginTab(const FSpawnTabArgs& SpawnTabArgs)
{

FText WidgetText = FText::Format(
	LOCTEXT("WindowWidgetText", "Add code to {0} in {1} to override this window's contents"),
	FText::FromString(TEXT("FConsoleModule::OnSpawnPluginTab")),
	FText::FromString(TEXT("Console.cpp"))
	);

TSharedRef&lt;SVerticalBox&gt; ButtonList = SNew(SVerticalBox);

FString ButtonName = FString("asdf");
FString ConsoleCommand = FString("r.shadowquality 0");

CommandCollection.Add(ConsoleCommand);
CommandCollection.Add(ButtonName);

//	FString SaveDirectory = FString("C:/Users/Chief/Desktop/Newfolder");
//	FString FileName = FString("command.txt");
//	FString TextToSave = ConsoleCommand;
//	FString AbsoluteFilePath = SaveDirectory + "/" + FileName;
//	FFileHelper::SaveStringToFile(TextToSave, *AbsoluteFilePath);
//	const TCHAR* Command = *ConsoleCommand;

//	GEngine-&gt;Exec(NULL, Command, *GLog);


for (const auto& Item : CommandCollection)
{

	ButtonList-&gt;AddSlot()
		// Fix Buttonheight
		
			SNew(SButton)
			.Text(FText::FromString(TEXT("Load Commands")))

		];

}

ButtonList-&gt;AddSlot()


	SNew(SScrollBox)
	+ SScrollBox::Slot().Padding(10, 5)

	
		SNew(SHorizontalBox)
		+ SHorizontalBox::Slot().FillWidth(2)

	
		SNew(SButton)
		.Text(FText::FromString(TEXT("Load Commands")))
		.OnClicked_Lambda(&]()-&gt;FReply
{

// CRASHES EDITOR.

//	ButtonList-&gt;AddSlot()
//		
//			SNew(SButton)
//		];

	return FReply::Handled(); })

	]]];

return SNew(SDockTab)
	.TabRole(ETabRole::NomadTab)
	
	
		ButtonList
	];

}