从枚举中显示int值

这个问题在这里已经有了答案:

  • 从C#中的枚举中获得int值的24个答案

  • 要获取Enum的所有值,请尝试此操作

    var allValues = Enum.GetValues(typeof(TotalSteps)).Cast<int>().ToArray();
    

    你的totalSteps属性应该是这样的

    public int[] totalSteps
    {
       get { return Enum.GetValues(typeof(TotalSteps)).Cast<int>().ToArray(); }
    }
    

    我怎样才能在“get”函数中返回它? 该值无法转换

    属性(我猜)被定义为获取/设置选定的枚举值,所以当类型为TotalSteps时不能返回int。

    我建议Step内有另一个只读属性,将选定的enum值转换为int

     public int Step
     {
         get {return (int)totalsteps; }
     }
    

    既然你提到(作为评论),你想要所有的int值绑定到ComboBox做到这一点。

     public List<int< ComboValues
     {
         get { return Enum.GetValues(typeof(TotalSteps)).Cast<int>().ToList(); } 
     }
    

    您应该创建一个返回int而不是TotalSteps的属性

    你在做这个

        private TotalSteps totalSteps;
    
        public TotalSteps totalsteps
        {
            get { return totalSteps; }
            set { value = totalSteps; }
        }
    

    我会建议这样做

        private TotalSteps totalSteps;
        private int totalStepsInInt;
    
        public int TotalstepsInInt
        {
            get { return totalStepsInInt; }
            set { totalStepsInInt = value; }
        }
    

    当设置这个属性时,你必须通过这样来转换int中的totalSteps。

       `TotalStepsInInt = (int)totalSteps;`
    
    链接地址: http://www.djcxy.com/p/91793.html

    上一篇: display int value from enum

    下一篇: Get a enum value