Установка фокуса в событии OnLostFocus C# silverlight один замаскированный текстовое поле
Я пытаюсь выполнить некоторую пользовательскую проверку внутри текстового поля с маской c1, и проверка должна произойти OnLostFocus(). Проблема в том, что когда я вызываю Focus () из OnLostFocus(), это приводит к тому, что элемент управления снова теряет / получает фокус, что является бесконечным циклом. Любая помощь / предложения будут великолепны!
заранее спасибо!!!
ниже в основном код позади того, что у меня есть:
protected override void OnLostFocus(RoutedEventArgs e)
{
if (!CheckAndRunValidator())
{
Focus();
SelectAll();
return;
}
base.OnLostFocus(e);
}
1 ответ
Вы могли бы попробовать
Dispatcher.BeginInvoke( () => Focus() );
Если это не работает, попробуйте использовать DispatcherTimer
с коротким Interval
и сосредоточиться на Tick
событие.