1

我需要一个文本框,删除和退格的事件在该文本框上起作用。是否可以在 C# 中拥有这样的文本框,或者以这种方式限制文本框的行为。其他键不起作用。

4

3 回答 3

1

使用TextBox.KeyPress事件:

    private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Delete || e.KeyCode == Keys.Back)
        {
            // your stuff
        }
        e.Handled = true;
    }
于 2013-05-23T05:35:14.467 回答
0

如果你想删除密钥作品..

private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
    Keys k = e.KeyCode

    If Not (k = Keys.Back Or k = Keys.Delete)
    {
        e.Handled = True
    }        
}
于 2013-05-23T13:24:37.683 回答
0

对于winforms,你可以这样做:

protected void myTextBox_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
    e.Handled = !IsValidCharacter(e.KeyChar);
}

private bool IsValidCharacter(Keys c)
{
    bool isValid = false;

    if (c == Keys.Space)
    {
       isValid = true;
    }   
   return isValid; 
}
于 2013-05-23T05:33:52.103 回答