Yes, the cast is incorrect.
This is the syntax:
Cast<"TargetClass">("ObjectToBeCasted");
In return you get a pointer which is either “nullptr” if cast failed or a pointer of “TargetClass”.
So, in your case:
UContainerWidgetUpdate* containerWidgetUpdateCasted = Cast<UContainerWidgetUpdate>();
if(containerWidgetUpdateCasted != nullptr)
{
containerWidgetUpdateCasted.UpdateWidget();
}
Note: You should always check if cast has failed, otherwise it’s very likely you will get crashes.