Impostazione del contenuto di una casella di testo in maiuscolo su CurrentItemChanged
-
03-07-2019 - |
Domanda
Vorrei che il testo nella mia casella di testo fosse impostato in maiuscolo ogni volta che viene attivato currentItemChanged. In altre parole, ogni volta che il testo nella casella cambia, vorrei rendere il contenuto in maiuscolo. Ecco il mio codice:
private void rootBindingSource_CurrentItemChanged(object sender, System.EventArgs e)
{
toUserTextBox.Text.ToUpper();
readWriteAuthorization1.ResetControlAuthorization();
}
L'evento si innesca di sicuro, ho testato con un messageBox. Quindi so di aver fatto qualcosa di sbagliato qui ... la domanda è cosa.
Soluzione
Le stringhe sono immutabili. ToUpper () restituisce una nuova stringa. Prova questo:
private void rootBindingSource_CurrentItemChanged(object sender, System.EventArgs e)
{
toUserTextBox.Text = toUserTextBox.Text.ToUpper();
readWriteAuthorization1.ResetControlAuthorization();
}
Altri suggerimenti
Se tutto ciò che devi fare è forzare l'input in lettere maiuscole, prova Proprietà CharacterCasing della casella di testo.
toUserTextBox.CharacterCasing = CharacterCasing.Upper;
Immagino che la tua domanda sia: Perché il tuo codice non funziona.
Non stai assegnando " Uppered " di nuovo il testo nella casella di testo.
Dovrebbe essere:
private void rootBindingSource_CurrentItemChanged(object sender, System.EventArgs e)
{
toUserTextBox.Text = toUserTextBox.Text.ToUpper();
readWriteAuthorization1.ResetControlAuthorization();
}