Lost_Focus event with e.Cancel to block the user
Add the boolean Cancel to the RoutedEventArgs for Lost_Focus so if set to true, it'll stay on the control to block the user until a valid value is entered.
I tried to perform a Control.Focus INSIDE the Lost_Focus. It works except when the user click with the mouse elsewhere, it freezes Silverlight. Have to kill it