コード例 #1
0
        /// <summary>
        /// 获取枚举列表List (string)
        /// </summary>
        /// <typeparam name="T">枚举类型</typeparam>
        /// <returns>包含枚举列表的条件选择器实体类</returns>
        public List <SpiderCondition> GetList <T>()
        {
            List <SpiderCondition> TargetList = new List <SpiderCondition>();

            foreach (var item in (T[])System.Enum.GetValues(typeof(T)))
            {
                SpiderCondition SC = new SpiderCondition();
                SC[item.GetType().Name] = item;
                TargetList.Add(SC);
            }
            return(TargetList);
        }
コード例 #2
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Button ButtonClick = sender as Button;
            string Tag         = ButtonClick.Tag.ToString();

            switch (Tag)
            {
            case "Continue":
                var TargetTypeList = ConditionTargetTypeList.Where(x => x.IsChecked == true).Select(x => x.ConditionTargetType).ToList();
                var RarityList     = ConditionRarityList.Where(x => x.IsChecked == true).Select(x => x.ConditionRarity).ToList();
                var ExcList        = ConditionExcTypeList.Where(x => x.IsChecked == true && x.ConditionExcType != SpiderCondition.SpiderConditionExcType.AllMessage).Select(x => x.ConditionExcType).ToList();

                //判断是否选择了条件
                if (TargetTypeList.Count == 0 || RarityList.Count == 0 || ExcList.Count == 0)
                {
                    this.ParentWindow.IsSelectCondition = false;
                    this.ParentWindow.Ng.NavigaionWin.Close();
                    return;
                }

                //根据选择的条件生成下载列表
                List <SpiderCondition> ConditionList = new List <SpiderCondition>();
                this.ParentWindow.DownList = ConditionList;
                foreach (var Tar in TargetTypeList)
                {
                    foreach (var Exc in ExcList)
                    {
                        foreach (var Rar in RarityList)
                        {
                            SpiderCondition sc = new SpiderCondition();
                            sc.ConditionTargetType = Tar;
                            sc.ConditionExcType    = Exc;
                            sc.ConditionRarity     = Rar;
                            //sc.SetAddress();
                            ConditionList.Add(sc);
                        }
                    }
                }

                this.ParentWindow.IsSelectCondition = true;
                this.ParentWindow.Ng.NavigaionWin.Close();
                return;

            case "Back":
                this.ParentWindow.IsSelectCondition = false;
                this.ParentWindow.Ng.NavigaionWin.Close();
                return;
            }
        }
コード例 #3
0
        public void LoadConditionList()
        {
            SpiderCondition GetEnumList = new SpiderCondition();

            ConditionTargetTypeList.Clear();
            ConditionRarityList.Clear();
            ConditionExcTypeList.Clear();

            var CTT = GetEnumList.GetList <SpiderCondition.SpiderConditionTargetType>();

            ConditionTargetTypeList.AddRange(CTT);
            var CR = GetEnumList.GetList <SpiderCondition.SpiderConditionRarity>();

            ConditionRarityList.AddRange(CR);
            var CET = GetEnumList.GetList <SpiderCondition.SpiderConditionExcType>();

            ConditionExcTypeList.AddRange(CET);

            GetEnumList = null;
        }