如果您先输入"文本框将不接受"

时间:2014-03-05 09:32:08

标签: vb.net

我有2个问题。首先,我有TextBox名为Student Name。我的问题是,当我按 Space 时,TextBox中的值将为" "。然后当我按保存按钮时,它会保存在我的数据库中。

我在文本框中创建的条件是,如果没有文本但是因为它已接受值" ",它将无法保存。第二,你不能输入"space first before letter"。例如,如果您输入" John",它会显示一条消息:"Theres no name that starts with space!"类似的内容......

4 个答案:

答案 0 :(得分:0)

如果Textbox1" ",这个简单的if循环将不执行任何操作,如果文本只是一个空格,它将发出警告,否则它将执行操作

Private Sub SaveBtn_Click(sender As System.Object, e As System.EventArgs) Handles SaveBtn.Click

    Dim _string As String = TextBox1.text
    If _string = " " Then
        ' do nothing
    ElseIf _string.Substring(0, 1) = " " Then
        MessageBox.Show("Theres no name that starts with space!")
    Else
        'save to database code
    End If


End Sub

答案 1 :(得分:0)

您希望使用Trim()功能。

yourTextBox.Text.Trim()

您可以使用以下代码:

    If String.IsNullOrWhiteSpace(TextBox1.Text.Trim()) Then
        'incorrect input
    Else
        'correct input
    End If

我建议你不要回到服务器只是说第一个字符不能是空格。您只需使用Trim()函数并删除前导和尾随空格。

答案 2 :(得分:0)

'check for empty strings or only whitespace
if string.isnullorwhitespace(textbox1.text) then
    Messagebox.show("You have entered a blank name")

elseif textbox1.text(0) = " " then 'First letter is a space
    Messagebox.show("Theres no name that starts with space!")
else
    'all requirements have been met, put your update to database code here
end

答案 3 :(得分:0)

你可以像这样自动化它,这样每个输入都会在最后的空间得到纠正

    If TextBox1.Text.Trim(" ") = String.Empty Then
        MessageBox.Show("You have entered a blank name")
    Else
        Dim inputstring As String = TextBox1.Text

        inputstring = TextBox1.Text.TrimEnd(ControlChars.NewLine.ToCharArray)
        inputstring = inputstring.TrimStart(" ")
        inputstring = inputstring.TrimEnd(" ")
        inputstring = inputstring.Replace(vbNewLine, " ")
        TextBox1.Text = inputstring
    End If

这适用于单行和多行文本框