C#如何通过设置多个值来使用属性

本文关键字:属性 何通过 设置 | 更新日期: 2023-09-27 18:26:27

我想做这样的事情。

public partial class Form1 : Form{
    // bla bla.....
}
public enum FormMode { 
        Insert,
        Update,
        Delete,
        View,
        Print
    }
private FormMode frmMode = FormMode.Insert;
        public FormMode MyFormMode
        {
            get { return this.frmMode; }
            set { this.frmMode = value; }
        }

使用它是这样的。

fmDetails.MyFormMode= FormMode.Insert | FormMode.Delete | FormMode.Update;

我想这样做。已经在.net上有这种类型的东西了。但我不知道他们用什么,是structenum还是任何其他type

C#如何通过设置多个值来使用属性

为了完成您正在做的事情,您必须声明一个枚举,如下所示。最重要的是,枚举值都是2的幂,以便在FormMode.Insert | FormMode.Delete | FormMode.Update之类的语句中使用它们。

[Flags] //Not necessary, it only allows for such things such as nicer formatted printing using .ToString() http://stackoverflow.com/questions/8447/what-does-the-flags-enum-attribute-mean-in-c
public enum FormMode { 
    Insert=1,
    Update=2,
    Delete=4,
    View=8,
    Print=16
}