带有enum属性的c#包装类

本文关键字:包装类 属性 enum 带有 | 更新日期: 2023-09-27 18:18:28

我有一个类的详情与columnIndex

public class Details
{
    public int columnIndex { get; set;}
}

那么我有一个enum

public enum DetailsEnum
{
    Column1 = 1,
    Column2 = 2,
    Column3 = 3
}

然后我想创建一个包装器类,即使用上面的enum,具有属性

public class MyWrapperClass
{
  #region Fields
  private Details _details;
  #endregion
  #region Properties
public DetailsEnum sortColumnIndex
{
     get
     {
     }
     set
     {
     }
}
#endregion
}

我被困在这里,我想知道我应该写什么在get/set现在?任何帮助都是感激的!

带有enum属性的c#包装类

枚举可以强制转换为整型,反之亦然。

public DetailsEnum sortColumnIndex
{
     get
     {
        return (DetailsEnum)  _details.columnIndex;
     }
     set { _details.columnIndex = (int)value;}
}

你不需要写任何东西。这对于你的类

来说已经可以工作了
public class MyWrapperClass 
{
    private Details _details;
    public DetailsEnum sortColumnIndex { get; set; }
}

所以,在main方法中你已经可以使用它了

public static void Main()
{
MyWrapperClass foo = new MyWrapperClass();
foo.sortColumnIndex =  DetailsEnum.Column1; // Set Property
Console.Write(foo.sortColumnIndex); // Column 1
Console.Write((int)foo.sortColumnIndex); // 1
}