【问题标题】:Input validation numeric on the Keyboard,check if the textbox is empty在键盘上输入验证数字,检查文本框是否为空
【发布时间】:2022-11-25 00:17:32
【问题描述】:

我实现了登录,在此登录中我输入了 2 个文本框,一个用于用户名,一个用于密码。在文本框下方,我插入了一个数字键盘,现在我想验证键盘上按下的数字。 我已经设置,如果 tetxBox 为空,labeltext 会返回一个错误,我打算做的是检查输入是否正确,它告诉我它是正确的,然后按下回车按钮,我可以写下一个文本框,另一方面,如果文本框无效,它不会让我转到下一个文本框

请帮助我,我快要疯了:)

  private void button15_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(txt_nomeUtente.Text))
        {


            label6.ForeColor = Color.Red;
            label6.Text = "username empty, cannot be left empty";
            txt_nomeUtente.Text += ((Button)sender).Text;




        }
        else
        {
            label6.ForeColor = Color.Green;
            label6.Text = "username is acceptable";
            txt_Password.Text += ((Button)sender).Text;




            if (string.IsNullOrEmpty(txt_Password.Text))
            {
                label6.ForeColor = Color.Red;
                label6.Text = " password is empty";

            }
            else
            {
                label6.ForeColor = Color.Green;
                label6.Text = "La password is acceptable";

            }

        }


    }

【问题讨论】:

    标签: c# winforms validation


    【解决方案1】:

    如果他们输入无效的用户名,您似乎想关注用户名,如果用户名有效,则关注密码:

    private void button15_Click(object sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(txt_nomeUtente.Text))
        {
            label6.ForeColor = Color.Red;
            label6.Text = "username empty, cannot be left empty";
            txt_nomeUtente.Focus();
        }
        else
        {
            label6.ForeColor = Color.Green;
            label6.Text = "username is acceptable";
            txt_Password.Focus();
            if (string.IsNullOrEmpty(txt_Password.Text))
            {
                label6.ForeColor = Color.Red;
                label6.Text = " password is empty";
            }
            else
            {
                label6.ForeColor = Color.Green;
                label6.Text = "La password is acceptable";
            }
        }
    }
    

    【讨论】:

    • 主要问题是,当我评论这两行时,当我填写第一个文本框时结果是正确的,当我填写第二个文本框时它被输入到第一个文本框中,我想使用数字能够打字的键盘
    • “inoltee”是什么意思?请详细说明“我想使用数字键盘来打字”。您是否只希望用户能够输入数字而不是其他字符?
    • 是的,我已经屏蔽了特殊字符,我想做的是验证输入是否正确,这样我就可以进入下一个文本框,所以我填写第一个文本框,然后按回车键,如果验证成功它会让我填写下一个文本框,否则如果它不成功它不会让我继续下一个文本框。当我尝试运行应用程序并填写第一个文本框时,它得到了完美的验证,但它没有继续到第二个标签框,所以我从键盘输入的内容保留在第一个文本框中。
    • 听起来你想要的是 txt_Password.Focus() 而不是 txt_Password.Text += ((Button)sender).Text
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-18
    • 2013-03-05
    • 2018-10-26
    相关资源
    最近更新 更多