从不使用“Form1.answer”字段

时间:2017-01-08 15:33:56

标签: c# winforms textbox

我使用以下字词从字典中获取随机单词:

var word = File.ReadAllLines(@"c:\\CTEMP\\Dictionary2.txt");

并仅显示部分供玩家猜测:

hintTextBox.Text = GetPartialWord(word[new Random().Next(word.Length)]);
var answer = word[new Random().Next(word.Length)]; // answer = word from dictionary

但是我无法将用户输入的单词与字典中的单词进行比较。

我试过了:

  private string answer;  //assign answer to word from dictionary

    private void button2_Click(object sender, EventArgs e)
    {

        if (answerTextBox.Text == answer)
{MessageBox.Show("You Guessed The Word !");

但是我收到以下警告:

  

警告CS0169字段'Form1.answer'从不使用WindowsFormsApplication2

关于如何将答案与answerTextBox中输入的内容进行比较的任何想法?

1 个答案:

答案 0 :(得分:5)

问题出在这一行:

var answer = word[new Random().Next(word.Length)];

在这里,您可以创建新变量,而不是使用第1级。在if语句中,您将文本框的值与类级别变量进行比较。此外,您会收到警告,因为您从未将值分配给类级别变量,而是比较文本框的值。

该行应更改为:

this.answer = word[new Random().Next(word.Length)]; //or without "this."