将多个枚举值传递给方法

Ars*_*aiz -1 c# enums

我有一个枚举和一个这样的功能

        enum DaysOfWeek
        {
           Sunday = 1,
           Monday = 2,
           Tuesday = 4,
           Wednesday = 8,
           Thursday = 16,
           Friday = 32,
           Saturday = 64
        }

        public void RunOnDays(DaysOfWeek days)
        {
           // Do your work here..
        }

    // Im Calling The Function like this and passing the parameters with Pipe Seprated
       RunOnDays(DaysOfWeek.Tuesday | DaysOfWeek.Thursday);
Run Code Online (Sandbox Code Playgroud)

现在场景是在我的UI中我有一些复选框,如星期一到星期日,用户可以选择所有日期或可以选择至少一个.我想将选定的值传递给我的函数RunOnDays.所以它可以是单值或多值.如何在选择用户时动态地将值传递给该方法.

Dav*_*ier 5

在枚举上使用[Flags]属性

[Flags]
enum DaysOfWeek
{
   Sunday = 1,
   Monday = 2,
   Tuesday = 4,
   Wednesday = 8,
   Thursday = 16,
   Friday = 32,
   Saturday = 64
}

public void RunOnDays(DaysOfWeek days)
{
           // Do your work here..
}
Run Code Online (Sandbox Code Playgroud)