В общем, у меня есть куча текстовых полей, которые пользователь может заполнить. У меня есть кнопка, которую я хочу оставить отключенной, пока во все текстовые поля не будет введен текст. Вот пример XAML TextBox, который я использую:
<TextBox Name="DelayedRecallScore" TextInput="CheckTextBoxFilled" Width="24" />
И вот функция, которую я пытаюсь вызвать:
//Disables the OK button until all score textboxes have content
private void CheckTextBoxFilled(object sender, RoutedEventArgs e)
{
/*
foreach (TextBox scorebox in TextBoxList)
{
if (string.IsNullOrEmpty(scorebox.Text))
{
Ok_Button.IsEnabled = false;
return;
}
}
Ok_Button.IsEnabled = true;
*/
MessageBox.Show("THIS MAKES NO SENSE");
}
MessageBox не отображается, когда должен запускаться TextInput. В качестве эксперимента я попытался запустить CheckTextBoxFilled() для PreviewTextInput, и тогда он работал нормально, а это означает, что по какой-то причине функция просто не вызывается. У меня также есть функция проверки, которая запускается PreviewTextInput и работает как надо. Сначала я подумал, что PreviewTextInput может каким-то образом мешать TextInput, поэтому я удалил PreviewTextInput с TextBox, но это ничего не помогло исправить. Я совершенно озадачен тем, почему это может произойти, поэтому любая помощь будет оценена по достоинству.