Si usted tiene que hacerlo de forma manual, puede utilizar
private void textBox3_KeyPress(object sender, KeyPressEventArgs e)
{
textBox3.Text += e.KeyChar.ToString().ToUpper();
textBox3.SelectionStart = textBox3.Text.Length;
e.Handled = true;
}
Pero el código anterior se inserta el nuevo carácter al final del texto. Si desea insertarlo en la posición del cursor:
private void textBox3_KeyPress(object sender, KeyPressEventArgs e)
{
int selStart = textBox3.SelectionStart;
textBox3.Text = textBox3.Text.Insert(selStart,e.KeyChar.ToString().ToUpper());
textBox3.SelectionStart = selStart + 1;
e.Handled = true;
}
Este código inserta el nuevo carácter en la posición del cursor y mueve el cursor a la izquierda del carácter que acaba de insertar.
Pero sigo pensando que configurar CharacterCasing es mejor.
qué marco interfaz gráfica de usuario está usando? ¿Es esto ganar formas? wpf? Silverlight? –
@ monkey_boys-Espero que mis cambios hayan dejado intacto tu significado. –
Tenga en cuenta que 'textBox3.Text + = e.KeyChar.ToString(). ToUpper()' siempre agregará el carácter nuevo al final en el cuadro de texto, incluso si el símbolo de intercalación está en el medio del texto. –