Blueprint does not call my C++ Function property?

As Teiwaz said, its probably the cast isn’t working.

Now if your game is a multiplayer one or has split screen, then the issue could be the way you are getting the player character. For user widgets you should be using the function from that class to get the player controller/pawn. This is called Get Owning Player Pawn.

You should also check the result of the cast. Have you tried putting a break point in your code to see if it getting hit? You can breakpoint the blueprint as well, and see the value of your cast to make sure it is set.