根据文本框错误重新定义变量

时间:2015-02-24 21:38:45

标签: c# forms variables compiler-errors

我是编码和C#的新手,很抱歉,如果这是一个愚蠢的问题。

我需要根据文本框(用户输入)重新定义变量,我收到错误

int age;
private void Age_TextChanged(object sender, EventArgs e)
   {
       //saves age in years
       age = Age_TextChanged.int;
   }

这是错误的行“age = Age_TextChanged.int;”在int位

错误如下

预期的标识符; 'int'是一个关键字

首先,这是什么意思,其次,我该如何解决?

1 个答案:

答案 0 :(得分:1)

首先,错误消息试图指出您已经要求提供不存在的内容。作为补充信息,它还指出int是关键字,不适合作为变量名称。

如果您在文本框中输入了一个数字,并希望在该类型的变量中使用等效的整数,则需要使用Int32.TryParse()尝试将String转换为Int32 1}}。

听取我的建议:更好地命名控件和变量。随着您的进步,它将使您更容易。我已经调整了我的例子:

Int32 iAge;
private void txtAge_TextChanged(Object sender, EventArgs e)
{
    //Saves age in years...
    if (!Int32.TryParse(txtAge.Text, out iAge))
    {
        MessageBox.Show(String.Format("Conversion of '{0}' to Int32 failed!", txtAge.Text), "Bad Data", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
    }
    else
    {
        //it parsed into the Int32, so do something with it...
    }
}