У меня есть TextBox
, для которого я хотел бы выполнить несколько условий в зависимости от того, введено ли в нем целое число. Мои операции происходят из отделенного кода окна, что TextBox
существует вЗамечание о методах TextBox
Под LostFocus
случае я хотел бы сделать следующее:.
Проверьте, если
string
IsNullOrEmpty
-Если это - задан текст в «Запись по умолчанию»
Убедитесь, что введенное значение является
Int
Если это не так - Отображение
MessageBox(Ok Button)
, затем установите фокус назад наTextBox
** Это то, что моя LostFocus
функция выглядит следующим образом:
выше функция работает хорошо для тестирования: string
IsNullOrEmpty
, но у меня возникают проблемы с состоянием else if
. Когда я пытаюсь сбросить фокус обратно на TextBox
, я получаю бесконечный цикл MessageBoxes
. Почему это и как я могу это исправить?
Update 1:
Эти дополнительные обработчики событий на TextBox
:
//State of View at startup
private void Document_Loaded(object sender, RoutedEventArgs e)
{
//This is run because I need the TextBox to have focus at window startup
TextBox.Focusable = true;
TextBox.Focus();
}
XAML:
<UserControl Loaded="Document_Loaded" ... >
У вас есть какие-либо другие обработчики событий на текстовом поле, или какой-либо код не отображается в этот обработчик? – Servy
Да, у меня много. Это будет очень много, если я опубликую все это. Что я должен искать, это испортит этот процесс? –
@Ericafterdark, 'другие обработчики событий в текстовом поле'. –