简单的年薪计算器的C#编译错误

时间:2013-11-04 00:36:13

标签: c#

我是C#的新手并试图创建我的第一个应用程序。 我有3个错误。前两个说txtSalary和Salary不存在。 第三个说它

  

无法转换方法组' ToString'到非委托类型'字符串'。

并询问我是否打算调用该方法。

这就是我所拥有的:

protected void Button1_Click(object sender, EventArgs e)  
{
    int salary, AnnualHours, Rate;
    string txtAnnualHours, txtSalary, txtRate;

    salary = AnnualHours * Rate;
    txtsalary = int.Parse(Salary); 
    txtAnnualHours = salary.ToString; 
    MessageBox.Show(salary); 
}

根据我的书,当您在AnnualHoursRate文本框中输入数字时,单击Button1时,这些值将从字符串转换为整数,然后乘以工资。 然后将数字答案转换为字符串并显示在名为txtSalary的消息框中。

请告诉我出错的原因,因为根据这本书,我没有遗漏任何东西。

2 个答案:

答案 0 :(得分:0)

正确的代码是

protected void Button1_Click(object sender, EventArgs e)  
{
    int salary, AnnualHours = 0, Rate = 0;
    string txtAnnualHours, txtSalary, txtRate;

    salary = AnnualHours * Rate;
    txtSalary = salary.ToString();
    txtAnnualHours = salary.ToString();
    MessageBox.Show(salary);
}

对于MessageBox的错误,您需要在cs文件的顶部写这个。

using System.Windows.Forms;

答案 1 :(得分:0)

这条线

txtsalary = int.Parse(Salary);

不仅不正确,而且不必要。 txtsalary是一个字符串,int.Parse返回一个int - 这两个类型不兼容。最重要的是,int.Parse 期望一个字符串参数,并且您正在尝试传递一个int。

据我所知,你需要的只是

txtsalary = Salary.ToString();