我希望每当触发currentItemChanged时,我的textBox中的文本都会设置为大写。换句话说,每当框中的文本发生变化时,我都希望将内容设置为大写。这是我的代码:

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