C# 串口号输入框限制输入和自动大写

本代码示例展示了如何在 C# 中使用 KeyPressEventArgsTextChanged 事件来限制串口号输入框的输入内容,并自动将输入的小写字母转换为大写字母。

// 当串口号输入框按键抬起时,限制输入内容
private void KeyUP_COM(object sender, KeyPressEventArgs e)
{
    // 只允许输入字母、数字、退格键、'C'、'O'、'M'
    if (!(char.IsLetterOrDigit(e.KeyChar) || e.KeyChar == '\b' || e.KeyChar == 'C' || e.KeyChar == 'O' || e.KeyChar == 'M'))
    {
        e.Handled = true;
        // 标记文本已发生改变
        isTextChanged_COM = true;
        return;
    }
    e.Handled = false;
}

// 当串口号输入框文本发生改变时,将小写字母转换成大写字母
private void TextChanged_COM(object sender, EventArgs e)
{
    if (isTextChanged_COM)
    {
        // 重置文本改变标记
        isTextChanged_COM = false;
        // 将输入框文本全部转换成大写字母
        TextBox t = sender as TextBox;
        t.Text = t.Text.ToUpper();
        // 设置光标位置为文本末尾
        t.SelectionStart = t.Text.Trim().Length;
    }
}

代码说明:

  • KeyUP_COM 方法在按键抬起时触发,用于限制输入内容。
  • if 语句判断输入字符是否为字母、数字、退格键、'C'、'O'、'M'。如果不是,则设置 e.Handledtrue,阻止输入该字符。
  • isTextChanged_COM 变量用于标记文本是否发生改变。
  • TextChanged_COM 方法在文本发生改变时触发,用于将输入的小写字母转换为大写字母。
  • if 语句判断 isTextChanged_COM 是否为 true,如果是,则将输入框文本全部转换为大写字母,并将光标位置设置到文本末尾。

注意:

  • isTextChanged_COM 变量应该在类中声明为私有成员。
  • 为了更好地维护代码,建议在代码中添加更多的注释,并使用更加规范的命名方式。

通过以上代码,我们可以实现对串口号输入框的限制和自动大写功能,确保用户输入的串口号格式正确。

C# 串口号输入框限制输入和自动大写

原文地址: https://www.cveoy.top/t/topic/npWq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录