代码之家  ›  专栏  ›  技术社区  ›  JimDel

仅屏蔽数字文本框,但不接受BackSpace

  •  3
  • JimDel  · 技术社区  · 17 年前

        private void amount_PaidTextBox_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (Char.IsNumber(e.KeyChar) != true)
            {
                e.Handled = true;
            }
        }
    
    9 回复  |  直到 15 年前
        1
  •  3
  •   Fredrik Mörk    17 年前

    if (Char.IsControl(e.KeyChar) != true && Char.IsNumber(e.KeyChar) != true)
    {
        e.Handled = true;
    }
    

    if (!Char.IsControl(e.KeyChar) && !Char.IsNumber(e.KeyChar))
    {
        e.Handled = true;
    }
    
        2
  •  3
  •   arbiter    17 年前

    private void amount_PaidTextBox_KeyPress(object sender, KeyPressEventArgs e)
    {
        e.Handled = !сhar.IsNumber(e.KeyChar) && (e.KeyChar != '\b');
    }
    
        3
  •  1
  •   user112889    17 年前

    private void textBox1_TextChanged(object sender, EventArgs e)
    {
        string text = (sender as TextBox).Text;
    
        StringBuilder builder = new StringBuilder(String.Empty);
    
        foreach (char character in text)
        {
            if (Char.IsDigit(character))
            {
                builder.Append(character);
            }
        }
    
        (sender as TextBox).Text = builder.ToString();
    }
    

        4
  •  0
  •   colithium    17 年前
    private void amount_PaidTextBox_KeyPress(object sender, KeyPressEventArgs e)
    {
         if (!Char.IsNumber(e.KeyChar) && e.KeyCode != Keys.Back)
              e.Handled = True;
    }
    
        5
  •  0
  •   richardtallent    17 年前

     private void amount_PaidTextBox_KeyPress(object sender, KeyPressEventArgs e)
     {
       e.Handled = !(Char.IsNumber(e.KeyChar) || (e.KeyChar==Keys.Back));
     }
    
        7
  •  0
  •   Community Mohan Dere    9 年前
    private void txt_KeyPress(object sender, KeyPressEventArgs e)
    {
        if (Char.IsDigit(e.KeyChar) || e.KeyChar == '\b')
        {
            // Allow Digits and BackSpace char
        }        
        else
        {
            e.Handled = true;
        }
    }
    

    另请参阅链接: Masking Textbox to accept only decimals

        8
  •  0
  •   Ilja Pahotin    8 年前

          private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsDigit(e.KeyChar) & (e.KeyChar != 8)) e.Handled = true; 
        }
    
        9
  •  -1
  •   Haroon Amer    5 年前

    从事件中双击KeyPress

    if( e.KeyChar <'0' || e.KeyChar > '9' )
    if(e.KeyChar!=08)
    e.Handled=true;
    
    推荐文章