c#读取文本框忽略字符

本文关键字:字符 读取 取文本 | 更新日期: 2023-09-27 18:10:14

大家好,我有一个按下键事件,如下

if (e.KeyCode == Keys.C && e.KeyCode == Keys.Enter || e.KeyCode == Keys.Return)
{
    var amount = textBox1.Text;
    var total = label3.Text;
    decimal damount = Math.Round(Convert.ToDecimal(amount), 2);
    decimal dtotal = Convert.ToDecimal(total);
    var ntotal = dtotal - damount;
    var ndue = Math.Round(Convert.ToDecimal(ntotal), 2);
    var ntotal1 = Convert.ToString(ndue);
    if (ndue <= 0)
    {
        panel4.Show();
        label4.Text = ntotal1;
    }
    else
    {
        label3.Text = ntotal1;
    }
    textBox1.Text = "";
    textBox1.Focus();
}

这个事件的工作方式,就像我想要的,但这里是我的问题,我如何在阅读textbox1。文本忽略字符,如c或a,因为按键需要c,它与我的十进制转换混乱任何建议

c#读取文本框忽略字符

当您想要阻止按键前进时,将e.SuppressKeyPress = true; e.Handled = true;添加到处理程序。

作为题外话,你的if语句等于if (e.KeyCode == Keys.Return),因为它永远不会等于CEnter

前一段时间我写了一篇关于限制用户输入文本框的简短文章,这是可用的在这里(限制允许的字符在文本框),但我意识到它没有处理的一件事是用户粘贴文本,其中包含这些字符到文本框,下面可能对你有用(阻止某人粘贴到文本框)。这两篇文章都是用VB写的。. NET,但是代码很简单,你应该不会有任何问题,将代码转移到c#。

希望这对你有帮助