Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot Assign because it is a method group C#?

Cannot Assign "AppendText" because it is a "method group".

public partial class Form1 : Form
{
    String text = "";

    public Form1()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        String inches = textBox1.Text;
        text = ConvertToFeet(inches) + ConvertToYards(inches);
        textBox2.AppendText = text;
    }

    private String ConvertToFeet(String inches)
    {
        int feet = Convert.ToInt32(inches) / 12;
        int leftoverInches = Convert.ToInt32(inches) % 12;
        return (feet + " feet and " + leftoverInches + " inches." + " \n");
    }

    private String ConvertToYards(String inches)
    {
        int yards = Convert.ToInt32(inches) / 36;
        int feet = (Convert.ToInt32(inches) - yards * 36) / 12;
        int leftoverInches = Convert.ToInt32(inches) % 12;
        return (yards + " yards and " + feet + " feet, and " + leftoverInches + " inches.");
    }
}

The error is on the line "textBox2.AppendText = text", inside the button1_Click method.

like image 883
puretppc Avatar asked Nov 04 '13 16:11

puretppc


2 Answers

Use following

textBox2.AppendText(text);

Instead of

textBox2.AppendText = text;

AppendText is not a property but a method. Thus it needs to be invoked with parameter and cannot be assigned directly.

Properties are special methods, that support assignments due to special handling in compiler.

like image 115
Tilak Avatar answered Oct 09 '22 01:10

Tilak


Do this instead (AppendText is a method, not a property; which is exactly what the error message is telling you):

textBox2.AppendText(text);
like image 43
Mansfield Avatar answered Oct 09 '22 02:10

Mansfield