C#编译器认为我的属性是一种方法

时间:2013-11-20 19:15:13

标签: c# properties

我对C#很新,我不明白出了什么问题。我正在尝试为我的类分配一个'Name'属性,然后调用它,但编译器说“无法从'方法组'转换为'对象'。”应该清楚“Name”不是一种方法但是财产!

C#
namespace Learn_To_Code
{
    public class Elementary_Flow
    {
        // fields:
        TreeView myTreeView;
        // ....

        public Elementary_Flow()
        {
            // construct..
        }

        public string Name
        { 
            get { return myTreeView.Name; }
            set { myTreeView.Name = value; }
        }
        // more code...
    }
    class Learn_To_Code
    {
        [STAThread]
        static void Main()
        {
            Elementary_Flow MyFlow = new Elementary_Flow();
            // following line throws error:
            Console.WriteLine("New Elementary Flow Created. Name: {0}", MyFlow.Name );
        }
    }
}

2 个答案:

答案 0 :(得分:4)

那是因为你在Console.Writeline语句的末尾缺少一个分号。添加一个。

Console.WriteLine("New Elementary Flow Created. Name: {0}", MyFlow.Name );

修改

正如史蒂夫在评论中所说,您可能希望clean再做另一个build

答案 1 :(得分:0)

问题必定存在于代码之外的其他地方 - 我创建了一个新项目并将旧项目一次一个地粘贴到新项目中,现在新项目==旧项目但错误不会发生。

抱歉浪费了一些东西。