如何阻止文本框中的第一个字符作为空格?

时间:2013-03-27 16:16:50

标签: c# winforms

我有一个文本框,希望用户无法在第一个文本框中输入空格。用户可以在开始文本框的任何文本框中输入空格。我的计算机=允许我的计算机=不允许(空间开始),空间可能是一个或两个或两个以上。

4 个答案:

答案 0 :(得分:2)

如果您真的坚持使用其中一个事件,我建议您在Text_Changed事件中执行此操作我已经为您设置了一个简单的方法..

private void txtaddgroup_TextChanged(object sender, EventArgs e)
{
    var textBox = (TextBox)sender;
    if (textBox.Text.StartsWith(" "))
    {
        MessageBox.Show("Can not have spaces in the First Position");
    }
}

答案 1 :(得分:0)

实现一个按键事件,你可以删除任何空格,阅读更多here

答案 2 :(得分:0)

将此位代码添加到KeyDown事件处理程序以停止注册空格键:

//Check to see if the first character is a space
        if (UsernameTextBox.SelectionStart == 0) //This is the first character
        {
            //Now check to see if the key pressed is a space
            if (e.KeyValue == 32)
            {
                //Stop the key registering
                e.Handled = true;
                e.SuppressKeyPress = true;
            }
        }

32如果是空格字符的密钥代码。

答案 3 :(得分:0)

您应在KeyPress事件中将此参数作为参数“ e”调用此函数:

此处32是空格的ASCII值

void SpaceValidation(KeyPressEventArgs e)
{
    if (e.KeyChar == 32 && ActiveControl.Text.Length == 0)
        e.Handled = true;       
}

private void textbox1_KeyPress(object sender, KeyPressEventArgs e)
{
    SpaceValidation(e);
}