Установка содержимого textBox в верхний регистр на CurrentItemChanged

StackOverflow https://stackoverflow.com/questions/615106

Вопрос

Я хотел бы, чтобы текст в моем textBox устанавливался в верхнем регистре при каждом запуске currentItemChanged. Другими словами, всякий раз, когда текст в поле изменяется, я хотел бы сделать содержимое заглавными. Вот мой код:

private void rootBindingSource_CurrentItemChanged(object sender, System.EventArgs e)
{
    toUserTextBox.Text.ToUpper();
    readWriteAuthorization1.ResetControlAuthorization();
}

Событие срабатывает наверняка, я тестировал с messageBox. Так что я знаю, что я сделал что-то не так ... вопрос в том, что.

Это было полезно?

Решение

Строки являются неизменяемыми. ToUpper () возвращает новую строку. Попробуйте это:

private void rootBindingSource_CurrentItemChanged(object sender, System.EventArgs e)
{
    toUserTextBox.Text = toUserTextBox.Text.ToUpper();
    readWriteAuthorization1.ResetControlAuthorization();
}

Другие советы

Если все, что вам нужно сделать, это ввести ввод в верхний регистр, попробуйте CharacterCasing текстового поля.

toUserTextBox.CharacterCasing = CharacterCasing.Upper;

Я полагаю, что ваш вопрос - почему ваш код не работает.

Вы не назначаете " Uppered " снова в текстовое поле.

Должно быть:

private void rootBindingSource_CurrentItemChanged(object sender, System.EventArgs e)
{
    toUserTextBox.Text = toUserTextBox.Text.ToUpper();
    readWriteAuthorization1.ResetControlAuthorization();
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top