Así que, básicamente, tengo un montón de cuadros de texto que el usuario puede completar. Tengo un botón que quiero mantener inhabilitado hasta que todos los cuadros de texto hayan ingresado texto en ellos. Aquí es un cuadro de texto XAML muestra que estoy usando:WPF: Cuadro de texto que no activa el eventoTextInput
<TextBox Name="DelayedRecallScore" TextInput="CheckTextBoxFilled" Width="24" />
Y aquí está la función que estoy tratando de desencadenar:
//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");
}
El cuadro de mensaje no aparece cuando debería estar recibiendo TextInput desencadenado Como experimento intenté activar CheckTextBoxFilled() en PreviewTextInput, y funcionó bien entonces, lo que significa que por cualquier razón, la función simplemente no recibe ninguna llamada. También tengo una función de validación que se activa con PreviewTextInput, que funciona como debería. Al principio, pensé que PreviewTextInput podría estar interfiriendo de alguna manera con TextInput, así que saqué PreviewTextInput del TextBox, pero eso no ha logrado arreglar nada. Estoy completamente confundido por qué esto podría pasar, por lo que cualquier ayuda sería apreciada.
¿Qué pasó con los delegados de multidifusión? ¿Por qué no dispararía el evento asignado por el usuario además del propio? –