我有2个问题。首先,我有TextBox
名为Student Name
。我的问题是,当我按 Space 时,TextBox
中的值将为" "
。然后当我按保存按钮时,它会保存在我的数据库中。
我在文本框中创建的条件是,如果没有文本但是因为它已接受值" "
,它将无法保存。第二,你不能输入"space first before letter"
。例如,如果您输入" John"
,它会显示一条消息:"Theres no name that starts with space!"
类似的内容......
答案 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
这适用于单行和多行文本框