代码之家  ›  专栏  ›  技术社区  ›  Sergio Tapia

当我试图将一个属性从另一个类设置为另一个类时,它不允许我

  •  0
  • Sergio Tapia  · 技术社区  · 15 年前

    这是课程:

    namespace TomeOfNewerth_WPF_
    {
        class Hero
        {
            public string faction;
            public string name;
            public HeroType herotype;
    
            public enum HeroType
            {
                Agility,
                Strength,
                Intelligence
            }
        }
    }
    

    现在,在另一个类中,为了测试,我正在构造一个英雄类实例,并设置herotype属性,如下所示:

    namespace TomeOfNewerth_WPF_
    {
        class Spell
        {
            Hero x = new Hero();
    
            public void lol()
            {
                x.herotype = x.; //How can I set it?
            }
        }
    }
    

    我从枚举创建herotype属性的唯一原因是为了使应用程序更健壮,而不是依赖文字字符串。

    谢谢你的帮助。

    1 回复  |  直到 15 年前
        1
  •  1
  •   Michael Greene    15 年前

    x.herotype = HeroType.Agility; 通常是设置它的代码。你得走了 HeroType 在班外工作。

    值得一提的是,在构造函数中这样做可能更好,您应该研究通过属性而不是公共成员变量公开类信息。