Event dispatcher inside event dispatcher

Hello, i’m studying Unreal engine and i managed to make something work but i don’t know if it’s the right way to do it. Please follow my line of thought:
The game starts > the widget called “WB-selectTeam” is created on level blueprint:

In the “WB-selectTeam” widget, an event dispatcher is called when you click a button:

The bind happens on level blueprint:

Now here is the thing, inside this event dispatcher, i removed the previous widget from the screen and created another widget called “AlternateCharacters”. And on said widget, there’s another calling to event dispatcher called “CheckTeam” that is bound on level blueprint as well, inside the same event dispacther from before:

Ok, the last widget created (AlternateCharacters) has a widget switcher in it. One of these widgets has a button that calls another event dispatcher. This event dispatcher is bound on an actor that was dragged and dropped on the level called “Grid”. The problem is, to bind this event on said actor, i’m having to do this:

Because i can’t directly cast to the child widget, since it was never created. The way i’m doing it feels very wrong and messy, and i’m pretty sure it is. My question is, how do i bind events from child widgets if i can’t cast to them? Yes, maybe i could just create them, but it seems even messier to create widgets that are already called through widget switcher.