コード例 #1
0
        internal static string ToSerializedValue(this CategoryOperator value)
        {
            switch (value)
            {
            case CategoryOperator.In:
                return("In");

            case CategoryOperator.NotIn:
                return("NotIn");
            }
            return(null);
        }
コード例 #2
0
ファイル: MainWindow.xaml.cs プロジェクト: zstadler/HolySuite
        private void FilterReport()
        {
            if (FilteredReport == null)
            {
                return;
            }
            FilteredReport = new List <Participant>(Report);
            if (CategoryMode != "No Filter")
            {
                FilteredReport.RemoveAll(p => p.category_mode.ToLower() != CategoryMode.ToLower());
            }
            if (CategoryOperator != "No Filter")
            {
                FilteredReport.RemoveAll(p => p.category_op.ToLower() != CategoryOperator.ToLower());
            }
            if (CategoryPower != "No Filter")
            {
                FilteredReport.RemoveAll(p => p.category_power.ToLower() != CategoryPower.ToLower());
            }
            if (CategoryOrigin == "Israeli")
            {
                FilteredReport.RemoveAll(p => !HolyLogParser.IsIsraeliStation(p.callsign));
            }
            else if (CategoryOrigin == "Foreign")
            {
                FilteredReport.RemoveAll(p => HolyLogParser.IsIsraeliStation(p.callsign));
            }

            if (CategoryStation != "No Filter")
            {
                if (CategoryStation == "Fixed")
                {
                    FilteredReport.RemoveAll(p => p.squers > 1 || p.callsign.ToLower().Contains(@"/p"));
                }
                else if (CategoryStation == "Mobile")
                {
                    FilteredReport.RemoveAll(p => p.squers < 2 || p.callsign.ToLower().Contains(@"/p"));
                }
                else if (CategoryStation == "Portable")
                {
                    FilteredReport.RemoveAll(p => p.squers > 1 || !p.callsign.ToLower().Contains(@"/p"));
                }
            }
            DataContext = FilteredReport.OrderByDescending(p => p.score).ToList();

            if (L_NUmOfParticipantsValue != null)
            {
                L_NUmOfParticipantsValue.Content = FilteredReport.Count();
            }
            //Console.WriteLine("Category: " + CategoryMode + " : " + CategoryOperator + " : " + CategoryPower + " : " + CategoryStation);
        }