19

无法分配“AppendText”,因为它是“方法组”。

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.");
    }
}

错误出现在 button1_Click 方法内的“textBox2.AppendText = text”行。

4

6 回答 6

33

使用以下

textBox2.AppendText(text);

代替

textBox2.AppendText = text;

AppendText不是属性而是方法。因此需要带参数调用,不能直接赋值。

属性是特殊方法,由于编译器中的特殊处理而支持赋值。

于 2013-11-04T16:41:34.033 回答
5

改为执行此操作(AppendText 是一种方法,而不是属性;这正是错误消息告诉您的内容):

textBox2.AppendText(text);
于 2013-11-04T16:41:13.943 回答
5

textBox2.AppendText(text);是一种方法。你必须把它称为一个。您正在对方法执行赋值操作。

于 2013-11-04T16:41:21.807 回答
5

您必须以这种方式调用 AppendText:

textBox1.AppendText("Some text")
于 2013-11-04T16:42:29.867 回答
5

AppendText 是一种方法,您必须调用它。

textBox2.AppendText(text);
于 2013-11-04T16:42:49.833 回答
0

我发现声明的变量名称类似于方法名称,因此它不允许我分配值。
我改名的那一刻,它起作用了!

于 2019-12-08T22:54:45.920 回答