Exemple #1
0
        public CheckEnumList(Type enumType, object filterItems, EnumListOption enumListOption = EnumListOption.Add)
        {
            Initialize(enumType);

            int filterValue = Convert.ToInt32(filterItems);

            foreach (object enumValue in Enum.GetValues(_enumType))
            {
                int  enumValueAsInt = Convert.ToInt32(enumValue);
                bool shouldAddItem  = (filterValue & enumValueAsInt) != 0;
                if (enumListOption == EnumListOption.Exclude)
                {
                    if (filterValue == 0)
                    {
                        shouldAddItem = enumValueAsInt != 0;
                    }
                    else
                    {
                        shouldAddItem = !shouldAddItem;
                    }
                }

                if (shouldAddItem)
                {
                    var item = new CheckEnumViewModel(enumValue);
                    item.PropertyChanged += HandleItemPropertyChanged;
                    Items.Add(item);
                }
            }
        }
Exemple #2
0
 public CheckEnumList(Type enumType)
 {
     Initialize(enumType);
     foreach (object value in Enum.GetValues(_enumType))
     {
         var item = new CheckEnumViewModel(value);
         item.PropertyChanged += HandleItemPropertyChanged;
         Items.Add(item);
     }
 }