I'm still puzzled as to why it worked before, but not now,
Then the control must have had the focus at that time? I can't envision any other explanation, as long as in those cases you were still using .Text property.
It makes no sense to code for your button to get the focus. It already has it, given that the event is the button click event. It's not possible for the focus to be anywhere else given that user has just clicked the button - unless in code you divert focus to somewhere else in that event, and I don't see the code doing that. Also, you cannot set focus to a disabled control. Watch out for the behaviour when an unbound control is edited. If it had a value and you edit that value but don't leave the control, its .Value is what was there before, its .Text is what you changed it to.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.