VB.NET - 奇怪的字符串错误?

时间:2010-02-04 23:20:30

标签: vb.net textbox

我正在做一个简单的,当我的意思很简单时,我的意思很简单。但无论如何,我有这个东西,这个人输入一个单词,它将预览一个文本文件。即使是文本阅读器,我也可以设置所有内容,但是我在代码中遇到的一些不寻常之处就是“if语句”。每当我在文本框中键入单词时,它都不会运行我想要的东西,而是直接转到else并显示错误消息。这是我的代码:

If mainText.Text = "book" Then
        startProcess()

    ElseIf mainText.Text = "greet" Then  //Just there for testing..
        mainText.Text = "Hello there..."
    Else
        mainText.Text = "Please either enter a valid command."
    End If

现在我查看了mainText.text并在输入greet命令时看到了值..

{System.Windows.Forms.TextBox,Text:greet“& vbCrLf&”}

..我真的不明白为什么会发生这种情况..我所有的其他程序都可以正常工作。

任何人都可以帮我解决这个问题!??!

谢谢,

凯文

2 个答案:

答案 0 :(得分:1)

文本框是多行的吗?单行文本框不应允许这些字符。无论哪种方式,你都可以修剪字符串。

Dim command As String = mainText.Text.Trim()
If command = "book" Then
    startProcess()
ElseIf command = "greet" Then  // Just there for testing..
    mainText.Text = "Hello there..."
Else
    mainText.Text = "Please either enter a valid command."
End If

答案 1 :(得分:0)

当你打破它时它工作的事实听起来像一个同步问题(多线程)..可能是你使用的计时器连接的东西。 您能否提供有关您的代码/逻辑的更多信息?