C# 将textbox.Text与变量进行比较
我将textBox2.text与一个名为“word”的变量进行比较,word包含一个来自txt文件的随机单词。用户需要通过将单词放入文本框2来猜测单词,如果用户是正确的,则会出现一个消息框,显示他赢了 我写的代码没有显示任何错误,对我来说似乎很好,也许他们用其他方法来实现这个应用程序C# 将textbox.Text与变量进行比较,c#,C#,我将textBox2.text与一个名为“word”的变量进行比较,word包含一个来自txt文件的随机单词。用户需要通过将单词放入文本框2来猜测单词,如果用户是正确的,则会出现一个消息框,显示他赢了 我写的代码没有显示任何错误,对我来说似乎很好,也许他们用其他方法来实现这个应用程序 string word; // variable for random word generated word = RandomWord(); // Calling random word generator m
string word; // variable for random word generated
word = RandomWord(); // Calling random word generator method
private void button2_Click(object sender, EventArgs e)
{
if (textBox2.Text == word)
{
label4.Text = "You Won";
MessageBox.Show("You Guessed The Word = " + (word), "You won");
}
else
{
DoesNotMatch();
}
}
首先,像我在这个答案中所做的那样修正你的格式。然后,关于字符串,有一些事情需要记住:
类型李>
即使一个字符的大小写不同,也会破坏平等李>
任何空格,包括尾随空格/填充,都可能破坏相等性
string word; // variable for random word generated word = RandomWord();
// Calling random word generator method
private void button2_Click(object sender, EventArgs e) {
if(textBox2.Text != null && textBox2.Text.Trim() != string.Empty)
{
if (textBox2.Text.Trim().ToLower() == word.Trim().ToLower())
{
label4.Text = "You Won";
MessageBox.Show("You Guessed The Word = " + (word), "You won");
}
else
{
DoesNotMatch();
}
} else { throw new ApplicationException("Invalid entry, please try again.");}
}
考虑到这些问题,我应用了string.Trim()
和.Lower()
,以确保清除所有空白并忽略大小写。在此之前,我确认文本实际上存在于控件的.text
属性中。如果不是,我们将抛出一个异常(尽管您可能只想弹出一个消息框)。有更干净的方法可以做到这一点并解释各种文化差异,但这是在办公室环境中通常看到的快速、肮脏的方式。我忘了提到编写的代码不起作用解释“不起作用”。会发生什么?此外,请编辑您的问题,并提供类似的详细信息,不要在评论中发布。确保区分大小写。此外,请花时间在您的帖子中格式化代码-想象您正在尝试回答问题。。。你希望这个问题看起来怎么样?案例很重要word
不等于–word`或word
。尝试类似于textBox2.Text.Trim().ToLower()==word.Trim().ToLower()