/*<ControllerActionImplementation:InterestedInInvestor:1/>*/
        public ActionResult ExecuteInterestedInInvestor()
        {
            ActionResult _result = null;

            DSS5_SupplyChainFinancialsOptimisation.BO.Agreement       newAgreement = new DSS5_SupplyChainFinancialsOptimisation.BO.Agreement();
            DSS5_SupplyChainFinancialsOptimisation.BO.AgreementStatus newStatus    = new DSS5_SupplyChainFinancialsOptimisation.BO.AgreementStatus();
            newStatus.Status      = "Interested";
            newStatus.ProvidedBy  = "Supplier";
            newStatus.DateOccured = DateTime.UtcNow;
            newAgreement?.AddAgreementStatus(newStatus);
            if ((zAppDev.DotNet.Framework.Identity.IdentityHelper.GetCurrentApplicationUser()?.IsInRole("ValidatedSupplier") ?? false) || (zAppDev.DotNet.Framework.Identity.IdentityHelper.GetCurrentApplicationUser()?.IsInRole("ActiveSupplier") ?? false))
            {
                DSS5_SupplyChainFinancialsOptimisation.BO.Supplier newSup = new DSS5_SupplyChainFinancialsOptimisation.DAL.Repository().GetById <DSS5_SupplyChainFinancialsOptimisation.BO.Supplier>(zAppDev.DotNet.Framework.Identity.IdentityHelper.GetCurrentUserName());
                newAgreement.Supplier = newSup;
            }
            newAgreement.Investor = new DSS5_SupplyChainFinancialsOptimisation.BO.Investor();
            newAgreement.Investor = @model.Investor;
            new DSS5_SupplyChainFinancialsOptimisation.DAL.Repository().Save <DSS5_SupplyChainFinancialsOptimisation.BO.Agreement>(newAgreement);
            System.Collections.Generic.List <string> recipients = new System.Collections.Generic.List <string>();
            recipients.Add((@model.Investor?.Email ?? ""));
            zAppDev.DotNet.Framework.Utilities.EMailMessage em = new zAppDev.DotNet.Framework.Utilities.EMailMessage();
            em.Subject = "New Agreement";
            em.Body    = "A new Agreement is created" + "Please edit the Agreement.";
            em.To      = recipients.Distinct().ToList().ToList();
            zAppDev.DotNet.Framework.Utilities.Email.SendMail(em, true);
            ClientCommand(ClientCommands.SHOW_MESSAGE, "New Agreement created.");
            return(_result);
        }
Beispiel #2
0
        /// <summary>
        /// 平面胆码组二
        /// </summary>
        /// <param name="lastResult"></param>
        /// <returns></returns>
        private List <string> pingMianBiChu2(List <string> lastResult)
        {
            System.Collections.Generic.List <string> result = new System.Collections.Generic.List <string>();
            List <string> pingMianBiChu      = new List <string>();
            List <string> pingMianBiChuGeShu = new List <string>();

            foreach (Control ctl in this.groupNum_2.Controls) //this可以根据实际情况修改为this.groupBreakFast,this.groupLunch,this.groupDinner
            {
                if (ctl is CheckBox)
                {
                    if ((ctl as CheckBox).Checked == true)
                    {
                        if (!ctl.Name.Contains("twoZu"))
                        {
                            pingMianBiChu.Add((ctl as CheckBox).Text);
                        }
                        if (ctl.Name.Contains("twoZu"))
                        {
                            pingMianBiChuGeShu.Add((ctl as CheckBox).Text);
                        }
                    }
                }
            }
            result.AddRange(pingMianDanMaOutput(lastResult, pingMianBiChu, pingMianBiChuGeShu));
            List <string> result1 = result.Distinct().ToList();//去除重复项

            return(quanTaiCal(result1));
        }
Beispiel #3
0
/*
 * private void GenerateClsCompliantAttribute(AccessModifier modifier)
 * {
 *      if(modifier==AccessModifier.Public)
 *      {
 *
 *
 #line default
 #line hidden
 *
 #line 205 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\Utilities.tt"
 * this.Write("[global::System.CLSCompliant(true)]\r\n");
 *
 *
 #line default
 #line hidden
 *
 #line 207 "J:\Uni\CC Processes\Werkzeuge\PDE 2\Tum.PDE.ToolFramework\Tum.PDE.ToolFramework.Templates\Utilities.tt"
 *
 *      }
 * }
 */

        public System.Collections.Generic.IEnumerable <string> GetRequiredModelsList(MetaModel library)
        {
            System.Collections.Generic.List <string> modelNames = new System.Collections.Generic.List <string>();

            // Every model uses "Core"
            modelNames.Add("global::Microsoft.VisualStudio.Modeling.CoreDomainModel");

            List <MetaModel> models = CodeGenerationUtilities.GetAllLibraries(library);

            foreach (MetaModel importedModel in models)
            {
                modelNames.Add(importedModel.GetFullName(true) + "DomainModel");
            }

            /*
             * if (CodeGenerationUtilities.DefinesDiagramElements(library))
             * {
             *      modelNames.Add("global::Microsoft.VisualStudio.Modeling.Diagrams.CoreDesignSurfaceDomainModel");
             * }
             *
             *
             * foreach(DslLibrary importedLib in library.AllLibraries)
             * {
             *      modelNames.Add(importedLib.GetFullName(true) + "DomainModel");
             * }*/

            return(modelNames.Distinct());
        }
Beispiel #4
0
 private void SetUpZoom()
 {
     if (ZoomLevelStack != null)
     {
         System.Collections.Generic.List <double> resolutions = new System.Collections.Generic.List <double>();
         foreach (Layer layer in Map.Layers)
         {
             if (layer is TiledMapServiceLayer)
             {
                 TiledMapServiceLayer tlayer = layer as TiledMapServiceLayer;
                 if (tlayer.TileInfo == null || tlayer.TileInfo.Lods == null)
                 {
                     continue;
                 }
                 var res = from t in tlayer.TileInfo.Lods
                           select t.Resolution;
                 resolutions.AddRange(res);
             }
         }
         if (resolutions.Count < 1)
         {
             return;
         }
         resolutions.Sort();
         layerResolutions = resolutions.Distinct().Reverse().ToArray();
         StackPanel sp         = ZoomLevelStack;
         int        min        = 0;
         int        max        = layerResolutions.Length - 1;
         int        numLevels  = max + 1 - min;
         double     levelWidth = (100 / numLevels);
         for (int i = min; i <= max; i++)
         {
             SolidColorBrush brush       = setLevelBrush(i);
             Border          levelBorder = new Border()
             {
                 BorderThickness = new Thickness(0.5),
                 CornerRadius    = new CornerRadius(1),
                 Width           = levelWidth,
                 Height          = 14,
                 BorderBrush     = new SolidColorBrush(Color.FromArgb(255, 0, 0, 0)),
                 Background      = brush,
                 Tag             = i
             };
             levelBorder.MouseLeftButtonDown += levelBorder_MouseLeftButtonDown;
             levelBorder.MouseMove           += levelBorder_MouseMove;
             levelBorder.MouseLeftButtonUp   += levelBorder_MouseLeftButtonUp;
             sp.Children.Add(levelBorder);
         }
         sp.MouseLeave += new MouseEventHandler(sp_MouseLeave);
         zoomSetUp      = true;
     }
 }
 public static DSS5_SupplyChainFinancialsOptimisation.BO.Contact HomePageContactImplementation(string last_name, string email, string message)
 {
     DSS5_SupplyChainFinancialsOptimisation.BO.Contact contact = new DSS5_SupplyChainFinancialsOptimisation.BO.Contact();
     contact.LastName = last_name;
     contact.Email    = email;
     contact.Message  = message;
     System.Collections.Generic.List <string> recipients = new System.Collections.Generic.List <string>();
     recipients.Add("*****@*****.**");
     zAppDev.DotNet.Framework.Utilities.EMailMessage em = new zAppDev.DotNet.Framework.Utilities.EMailMessage();
     em.Subject    = "Tome Finance User Contact";
     em.IsBodyHtml = true;
     em.Body       = "<p>New message from</p> <p>Last Name: " + (contact?.LastName ?? "") + "</p> <p>E-mail: " + (contact?.Email ?? "") + "</p> <p>Message: " + (contact?.Message ?? "") + "</p> <p>&nbsp;</p>";
     em.To         = recipients.Distinct().ToList().ToList();
     zAppDev.DotNet.Framework.Utilities.Email.SendMail(em, true);
     return(contact);
 }
Beispiel #6
0
        static void Main(string[] args)
        {
            using (var reader = new System.IO.StreamReader(@"data__2019-11-28.csv"))
            {
                reader.ReadLine();
                System.Collections.Generic.List <string> listA = new System.Collections.Generic.List <string>();
                System.Collections.Generic.List <string> listB = new System.Collections.Generic.List <string>();
                while (!reader.EndOfStream)
                {
                    var line   = reader.ReadLine();
                    var values = line.Split(',');

                    listA.Add(values[6]);
                    listB.Add(values[0]);
                }

                int fCount = 0;
                int mCount = 0;
                int total  = 0;
                foreach (var i in listA)
                {
                    total++;
                    if (i.Contains("FEMALE"))
                    {
                        fCount++;
                    }
                }
                mCount = total - fCount;

                Console.WriteLine("Female count=" + fCount);
                Console.WriteLine("Male Count= " + mCount);
                List <string> dist = listB.Distinct().ToList();

                int uniqPolicyCount = 0;
                foreach (var i in dist)
                {
                    uniqPolicyCount++;
                }

                Console.WriteLine("Unique Policy Number: " + uniqPolicyCount);
            }
        }
Beispiel #7
0
        /// <summary>
        /// 平面胆码计算
        /// </summary>
        /// <param name="allNum"></param>
        /// <param name="pingMianBiChu"></param>
        /// <param name="pingMianBiChuGeShu"></param>
        /// <returns></returns>
        private List <string> pingMianDanMaOutput(List <string> allNum, List <string> pingMianBiChu, List <string> pingMianBiChuGeShu)
        {
            System.Collections.Generic.List <string> result = new System.Collections.Generic.List <string>();

            if (pingMianBiChu.Count == 0)
            {
                result.AddRange(allNum);
            }
            if (pingMianBiChu.Count == 1)
            {
                for (int i = 0; i < pingMianBiChu.Count; i++)
                {
                    for (int j = 0; j < pingMianBiChuGeShu.Count; j++)
                    {
                        for (int k = 0; k < allNum.Count(); k++)
                        {
                            if (Tools.SubstringCount(allNum[k], pingMianBiChu[i]) == Convert.ToInt16(pingMianBiChuGeShu[j]))
                            {
                                result.Add(allNum[k]);
                            }
                        }
                    }
                }
            }
            #region 平面必出选数多余1个
            if (pingMianBiChu.Count > 1)
            {
                string ppm = "";
                for (int i = 0; i < pingMianBiChu.Count; i++)
                {
                    ppm += pingMianBiChu[i];
                }

                for (int i = 0; i < allNum.Count(); i++)
                {
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3"))//选2个或以上出0,1,2,3个
                    {
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 3)//选2个或以上出0,1,2个
                    {
                        string x = allNum[i].Substring(0, 1), y = allNum[i].Substring(1, 1), z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3"))//选2个或以上出1,2,3个
                    {
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 2)//选2个或以上出1,2个
                    {
                        string x = allNum[i].Substring(0, 1), y = allNum[i].Substring(1, 1), z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Count == 1)//选2个或以上出0个
                    {
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Count == 2)//选2个或以上出0,1个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);


                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 2)//选2个或以上出0,2个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))) && !((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 2)//选2个或以上出0,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }

                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Count == 1)//选2个或以上出1个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);


                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 1)//选2个或以上出2个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))) && !((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 1)//选2个或以上出3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 2)//选2个或以上出1,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if ((allNum[i].Contains(jbk)))
                            {
                                if ((!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z)))) || ((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 3)//选2个或以上出0,1,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if ((allNum[i].Contains(jbk)))
                            {
                                if ((!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z)))) || ((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 2)//选2个或以上出2,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 3)//选2个或以上出0,2,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
                #endregion
            }
            List <string> result1 = result.Distinct().ToList();//去除重复项
            return(result1);
        }
Beispiel #8
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            System.Collections.Generic.SortedDictionary <string, string> requestPost = this.GetRequestPost();
            Globals.Debuglog(base.Request.Form.ToString(), "_Debuglog.txt");
            if (requestPost.Count <= 0)
            {
                base.Response.Write("无通知参数");
                return;
            }
            Notify notify = new Notify();
            bool   flag   = notify.Verify(requestPost, base.Request.Form["notify_id"], base.Request.Form["sign"]);

            if (flag)
            {
                string text     = base.Request.Form["batch_no"];
                string arg_96_0 = base.Request.Form["success_num"];
                string text2    = base.Request.Form["result_details"];
                if (!OneyuanTaoHelp.IsExistAlipayRefundNUm(text) && !string.IsNullOrEmpty(text2))
                {
                    try
                    {
                        string[] array = text2.Split(new char[]
                        {
                            '#'
                        });
                        System.Collections.Generic.List <string> list = new System.Collections.Generic.List <string>();
                        string[] array2 = array;
                        for (int i = 0; i < array2.Length; i++)
                        {
                            string   text3  = array2[i];
                            string[] array3 = text3.Split(new char[]
                            {
                                '^'
                            });
                            OneyuanTaoParticipantInfo addParticipant = OneyuanTaoHelp.GetAddParticipant(0, "", array3[0].Trim());
                            if (addParticipant != null)
                            {
                                if (text3.Contains("SUCCESS"))
                                {
                                    list.Add(addParticipant.ActivityId);
                                    addParticipant.Remark    = "退款成功";
                                    addParticipant.RefundNum = text;
                                    OneyuanTaoHelp.SetRefundinfo(addParticipant);
                                }
                                else
                                {
                                    addParticipant.Remark = "退款失败:" + text3;
                                    OneyuanTaoHelp.SetRefundinfoErr(addParticipant);
                                }
                            }
                        }
                        list = list.Distinct <string>().ToList <string>();
                        if (list.Count > 0)
                        {
                            OneyuanTaoHelp.SetIsAllRefund(list);
                        }
                    }
                    catch (System.Exception ex)
                    {
                        Globals.Debuglog(base.Request.Form.ToString() + ":exception->" + ex.Message, "_Debuglog.txt");
                    }
                }
                base.Response.Write("success");
                return;
            }
            base.Response.Write("fail");
            Globals.Debuglog(base.Request.Form.ToString(), "alipayrefun.txt");
        }
Beispiel #9
0
        private string BatchWxRefund(string Pids)
        {
            System.Collections.Generic.List <string> list = new System.Collections.Generic.List <string>();
            string result;

            if (!string.IsNullOrEmpty(Pids))
            {
                string   text = "";
                string[] pIds = Pids.Replace(" ", "").Replace("\u3000", "").Split(new char[]
                {
                    ','
                });
                System.Collections.Generic.IList <OneyuanTaoParticipantInfo> refundParticipantList = OneyuanTaoHelp.GetRefundParticipantList(pIds);
                int num = 0;
                foreach (OneyuanTaoParticipantInfo current in refundParticipantList)
                {
                    try
                    {
                        if (current != null && current.IsPay && current.PayWay == "weixin")
                        {
                            list.Add(current.ActivityId);
                            if (!current.IsRefund)
                            {
                                string text2 = current.out_refund_no;
                                if (string.IsNullOrEmpty(text2))
                                {
                                    text2 = RefundHelper.GenerateRefundOrderId();
                                    OneyuanTaoHelp.Setout_refund_no(current.Pid, text2);
                                }
                                string refundNum = "";
                                string text3     = RefundHelper.SendWxRefundRequest(current.Pid, current.TotalPrice, current.TotalPrice, text2, out refundNum);
                                if (text3 == "")
                                {
                                    current.Remark    = "退款成功";
                                    current.RefundNum = refundNum;
                                    OneyuanTaoHelp.SetRefundinfo(current);
                                    num++;
                                }
                                else
                                {
                                    current.Remark = "退款失败:" + text3.Replace("OK", "");
                                    OneyuanTaoHelp.SetRefundinfoErr(current);
                                    if (text3.Contains("金额不足") || text3.Contains("mch_id") || text3.Contains("mch_id") || text3.ToLower().Contains("appid") || text3.Contains("密码") || text3.Contains("证书") || text3.Contains("签名") || text3.ToLower().Contains("mchid"))
                                    {
                                        text = text3;
                                        break;
                                    }
                                }
                            }
                            else
                            {
                                num++;
                            }
                        }
                    }
                    catch (System.Exception ex)
                    {
                        text = ex.Message;
                        Globals.Debuglog("微信退款异常信息:" + ex.Message, "_wxrefund.txt");
                    }
                }
                if (num == 0)
                {
                    if (text == "")
                    {
                        result = "{\"state\":false,\"msg\":\"微信批量退款失败!\"}";
                    }
                    else
                    {
                        text   = text.Replace(",", ",").Replace("\"", " ").Replace("'", " ").Replace(":", " ");
                        result = "{\"state\":false,\"msg\":\"退款中断->" + text + "\"}";
                    }
                }
                else
                {
                    result = string.Concat(new string[]
                    {
                        "{\"state\":true,\"msg\":\"成功退款",
                        num.ToString(),
                        "笔,失败",
                        (refundParticipantList.Count - num).ToString(),
                        "笔\"}"
                    });
                }
            }
            else
            {
                result = "{\"state\":false,\"msg\":\"参数错误!\"}";
            }
            list = list.Distinct <string>().ToList <string>();
            OneyuanTaoHelp.SetIsAllRefund(list);
            return(result);
        }
Beispiel #10
0
        //差合
        private string[] chaHe()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = shaHeZhi();

            List<int> nums = new List<int>();
            foreach (Control ctls in this.chaHeGpb.Controls)
            {
                bool isNum = isNumber(ctls.Text);
                if ((ctls as CheckBox).Checked == true && isNum == true)
                {
                    nums.Add(Convert.ToInt16(ctls.Text));
                }
            }

            if (nums.Count > 0)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < nums.Count(); j++)
                    {
                        int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                        int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                        int c = Convert.ToInt16(allNum[i].Substring(2, 1));

                        int aa = Math.Abs(a - b);
                        int bb = Math.Abs(a - c);
                        int cc = Math.Abs(b - c);

                        int f = Convert.ToInt16((aa + bb + cc).ToString().Substring((aa + bb + cc).ToString().Length - 1, 1));

                        if (
                            f == nums[j]
                        )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
            }
            else
            {
                result.AddRange(allNum);
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #11
0
        //跨距
        private string[] kuaJu()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = heZhi();

            if (killKuaDu.Checked == false)
            {
                List<int> nums = new List<int>();
                foreach (Control ctls in this.kuaJuGpb.Controls)
                {
                    bool isNum = isNumber(ctls.Text);
                    if ((ctls as CheckBox).Checked == true && isNum == true)
                    {
                        nums.Add(Convert.ToInt16(ctls.Text));
                    }
                }

                if (nums.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < nums.Count(); j++)
                        {
                            int a = Convert.ToInt32(allNum[i].Substring(0, 1));
                            int b = Convert.ToInt32(allNum[i].Substring(1, 1));
                            int c = Convert.ToInt32(allNum[i].Substring(2, 1));
                            int max = 0;
                            int min = 0;

                            if (a > b)
                            {
                                if (a > c)
                                {
                                    max = a;
                                }
                                else
                                {
                                    max = c;
                                }
                            }
                            else
                            {
                                if (b > c)
                                {
                                    max = b;
                                }
                                else
                                {
                                    max = c;
                                }
                            }

                            if (a < b)
                            {
                                if (a < c)
                                {
                                    min = a;
                                }
                                else
                                {
                                    min = c;
                                }
                            }
                            else
                            {
                                if (b < c)
                                {
                                    min = b;
                                }
                                else
                                {
                                    min = c;
                                }
                            }

                            if (
                                max - min == nums[j]
                            )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }
                else
                {
                    result.AddRange(allNum);
                }

                List<string> result1 = result.Distinct().ToList();//去除重复项
                return result1.ToArray();
            }
            else
            {
                List<int> nums = new List<int>();
                result.AddRange(allNum);

                foreach (Control ctls in this.kuaJuGpb.Controls)
                {
                    bool isNum = isNumber(ctls.Text);
                    if ((ctls as CheckBox).Checked == true && isNum == true)
                    {
                        nums.Add(Convert.ToInt16(ctls.Text));
                    }
                }

                if (nums.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < nums.Count(); j++)
                        {
                            int a = Convert.ToInt32(allNum[i].Substring(0, 1));
                            int b = Convert.ToInt32(allNum[i].Substring(1, 1));
                            int c = Convert.ToInt32(allNum[i].Substring(2, 1));
                            int max = 0;
                            int min = 0;

                            if (a > b)
                            {
                                if (a > c)
                                {
                                    max = a;
                                }
                                else
                                {
                                    max = c;
                                }
                            }
                            else
                            {
                                if (b > c)
                                {
                                    max = b;
                                }
                                else
                                {
                                    max = c;
                                }
                            }

                            if (a < b)
                            {
                                if (a < c)
                                {
                                    min = a;
                                }
                                else
                                {
                                    min = c;
                                }
                            }
                            else
                            {
                                if (b < c)
                                {
                                    min = b;
                                }
                                else
                                {
                                    min = c;
                                }
                            }

                            if (
                                max - min == nums[j]
                            )
                            {
                                result.Remove(allNum[i]);
                            }
                        }
                    }
                }

                List<string> result1 = result.Distinct().ToList();//去除重复项
                return result1.ToArray();

            }
        }
Beispiel #12
0
        //全态计算
        private string[] quanTaiCal()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = numberPro();
            string[] zhiNums = new string[] { "1", "2", "3", "5", "7" };
            string[] danNums = new string[] { "1", "3", "5", "7", "9" };
            string[] xiaoNums = new string[] { "0", "1", "2", "3", "4" };
            string[] heNums = new string[] { "0", "4", "6", "8", "9" };
            string[] shuangNums = new string[] { "0", "2", "4", "6", "8" };
            string[] daNums = new string[] { "5", "6", "7", "8", "9" };

            int cbkCount = 0;
            foreach (Control ctls in this.quantaiGpb.Controls)
            {
                if (ctls is CheckBox)
                    if ((ctls as CheckBox).Checked == true)
                    {
                        cbkCount++;

                        if (ctls.Name.Equals("zhi"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (zhiNums.Contains(a) && zhiNums.Contains(b) && zhiNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("dan"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (danNums.Contains(a) && danNums.Contains(b) && danNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("xiao"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (xiaoNums.Contains(a) && xiaoNums.Contains(b) && xiaoNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("he"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (heNums.Contains(a) && heNums.Contains(b) && heNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("shuang"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (shuangNums.Contains(a) && shuangNums.Contains(b) && shuangNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("da"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (daNums.Contains(a) && daNums.Contains(b) && daNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("zuSan"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                                int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                                int c = Convert.ToInt16(allNum[i].Substring(2, 1));
                                if (
                                    a == b || a == c || b == c
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("zuLiu"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                                int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                                int c = Convert.ToInt16(allNum[i].Substring(2, 1));
                                if (
                                    a != b && a != c && b != c
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
            }

            if (cbkCount == 0)
            {
                result.AddRange(allNum);
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();
            return result1.ToArray();
        }
Beispiel #13
0
        //定位两码差
        private string[] locChaExecute()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = locHeExecute();
            List<string> locItems1 = new List<string>();//百十
            List<string> locItems2 = new List<string>();//百个
            List<string> locItems3 = new List<string>();//十个
            string locChuGeShu = "";
            foreach (Control ctl in this.loc2ChaGpb.Controls)
            {
                if (ctl is CheckBox)
                {
                    if ((ctl as CheckBox).Checked)
                    {
                        locChuGeShu += (ctl as CheckBox).Text;
                    }
                }
            }

            string a = "";
            foreach (Control ct in this.locBaiShiCha.Controls)
            {
                if (ct is CheckBox)
                {
                    if ((ct as CheckBox).Checked)
                    {

                        a += ((ct as CheckBox).Text);
                    }
                }
            }

            string b = "";
            foreach (Control ct in this.locBaiGeCha.Controls)
            {
                if (ct is CheckBox)
                {
                    if ((ct as CheckBox).Checked)
                    {

                        b += ((ct as CheckBox).Text);
                    }
                }
            }

            string c = "";
            foreach (Control v in this.locGeShiCha.Controls)
            {
                if (v is CheckBox)
                {
                    if ((v as CheckBox).Checked)
                    {

                        c += ((v as CheckBox).Text);
                    }
                }
            }

            //没选出条件
            if (
                locChuGeShu.Length == 0
                ||
                ((locChuGeShu.Length > 0 && a.Length == 0) && (locChuGeShu.Length > 0 && b.Length == 0) && (locChuGeShu.Length > 0 && c.Length == 0))
                )
            {
                result.AddRange(allNum);
            }

            #region 选择出0
            if (locChuGeShu.Length > 0 && locChuGeShu.Equals("0"))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems3.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出1
            if (locChuGeShu.Length > 0 && locChuGeShu.Equals("1"))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems3.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出2
            if (locChuGeShu.Length > 0 && locChuGeShu.Equals("2"))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出3
            if (locChuGeShu.Length > 0 && locChuGeShu.Equals("3"))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
            }
            #endregion

            #region 选择出0,1

            if (locChuGeShu.Length > 0 && (locChuGeShu.Equals("01") || locChuGeShu.Equals("10")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems3.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,2
            if (locChuGeShu.Length > 0 && (locChuGeShu.Equals("02") || locChuGeShu.Equals("20")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems3.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,3
            if (locChuGeShu.Length > 0 && (locChuGeShu.Equals("03") || locChuGeShu.Equals("30")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                                !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                ||
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                ||
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                                )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
            }
            #endregion

            #region 选择出0,1,2

            if (locChuGeShu.Length == 3 && (locChuGeShu.Contains("0") && locChuGeShu.Contains("1") && locChuGeShu.Contains("2")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems3.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,1,2,3

            if (locChuGeShu.Length == 4 && (locChuGeShu.Contains("0") && locChuGeShu.Contains("1") && locChuGeShu.Contains("2") && locChuGeShu.Contains("3")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < locItems3.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }

                            if (
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出1,2
            if (locChuGeShu.Length == 2 && (locChuGeShu.Contains("1") && locChuGeShu.Contains("2")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                    }
                }

                if (locItems1.Count > 0 && locItems2.Count == 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count == 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems2.Contains(v2.Substring(v2.Length - 1, 1)) && !locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1)) && !locItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出1,3
            if (locChuGeShu.Length == 2 && (locChuGeShu.Contains("1") && locChuGeShu.Contains("3")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出1,2,3
            if (locChuGeShu.Length == 3 && (locChuGeShu.Contains("1") && locChuGeShu.Contains("2") && locChuGeShu.Contains("3")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出2,3
            if (locChuGeShu.Length == 2 && (locChuGeShu.Equals("23") || locChuGeShu.Equals("32")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,1,3

            if (locChuGeShu.Length == 3 && (locChuGeShu.Contains("0") && locChuGeShu.Contains("1") && locChuGeShu.Contains("3")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (
                            (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                            )
                            ||
                            (
                            (
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            &&
                                !(
                                locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                )
                                &&
                                !(
                                locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                )
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,2,3

            if (locChuGeShu.Length == 3 && (locChuGeShu.Contains("0") && locChuGeShu.Contains("2") && locChuGeShu.Contains("3")))
            {
                foreach (Control ctl in this.locBaiShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems1.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locBaiGeCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems2.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                foreach (Control ctl in this.locGeShiCha.Controls)
                {
                    if (ctl is CheckBox)
                    {
                        if ((ctl as CheckBox).Checked)
                        {
                            locItems3.Add((ctl as CheckBox).Text);
                        }
                    }
                }

                if (locItems1.Count > 0 && locItems2.Count > 0 && locItems3.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            ||
                            (locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            !locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            )
                            ||
                            (locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            &&
                            !locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                            locItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            &&
                            locItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            &&
                            locItems3.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

            }
            #endregion

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();
            return result1.ToArray();
        }
Beispiel #14
0
        /// <summary>
        /// 临码综合控制
        /// </summary>
        /// <returns></returns>
        private string[] linMa()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();

            if (linMaBaoHanCbx.Checked == false && linMaShaQuCbx.Checked == false)
            {
                result.AddRange(shaQiHao());
            }

            string nums = "";
            foreach (Control ctls in this.lmGpb.Controls)
            {
                if (ctls is CheckBox)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums += ctls.Text;
                    }
                }
            }

            if (nums.Length > 0 && (linMaBaoHanCbx.Checked == true || linMaShaQuCbx.Checked == true))
            {

                //勾选“包含”
                if (linMaBaoHanCbx.Checked == true)
                {
                    if (daLinCbx.Checked == true)
                    {
                        result.AddRange(daLin());
                    }

                    if (xiaoLinCbx.Checked == true)
                    {
                        result.AddRange(xiaoLin());
                    }

                    if (daXiaoCbx.Checked == true)
                    {
                        result.AddRange(daXiao());
                    }

                    if (zhiLinCbx.Checked == true)
                    {
                        result.AddRange(zhiLin());
                    }

                    if (heLinCbx.Checked == true)
                    {
                        result.AddRange(heLin());
                    }

                    if (zhiHeCbx.Checked == true)
                    {
                        result.AddRange(zhiHe());
                    }

                    if (duanLinCbx.Checked == true)
                    {
                        result.AddRange(duanLin());
                    }
                }

                //勾选“杀去”
                if (linMaShaQuCbx.Checked == true)
                {
                    result.AddRange(duanLinSha());
                }
            }
            else
            {

                result.AddRange(shaQiHao());
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #15
0
        //判断龙头凤尾
        private string[] longTouFengWei()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();

            int nums = 0;

            List<string> mm = new List<string>();
            foreach (Control ctls in this.ltfwMustGpb.Controls)
            {
                if ((ctls as CheckBox).Checked == true)
                {
                    mm.Add(ctls.Text);
                }
            }

            if (mm.Contains("包含"))
            {
                foreach (Control ctls in this.touDxGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(touDx());
                    }
                }
                foreach (Control ctls in this.touDsGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(touDs());
                    }
                }
                foreach (Control ctls in this.touZhGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(touZh());
                    }
                }
                foreach (Control ctls in this.weiDxGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(weiDx());
                    }
                }
                foreach (Control ctls in this.weiDsGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(weiDs());
                    }
                }
                foreach (Control ctls in this.weiZhGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(weiZh());
                    }
                }
            }

            if (mm.Contains("杀去"))
            {
                foreach (Control ctls in this.touDxGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(touDx());
                    }
                }
                foreach (Control ctls in this.touDsGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(touDs());
                    }
                }
                foreach (Control ctls in this.touZhGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(touZh());
                    }
                }
                foreach (Control ctls in this.weiDxGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(weiDx());
                    }
                }
                foreach (Control ctls in this.weiDsGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(weiDs());
                    }
                }
                foreach (Control ctls in this.weiZhGpb.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums++;
                        result.AddRange(weiZh());
                    }
                }

                List<string> temp = new List<string>();
                temp.AddRange(chaHe());
                for (int i = 0; i < result.Count(); i++)
                {
                    temp.Remove(result[i]);
                }
                result.Clear();
                result.AddRange(temp);

            }

            if (nums == 0)
            {
                result.AddRange(chaHe());
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #16
0
        //临码之大小
        private string[] daXiao()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = shaQiHao();
            string[] bigNum = { "4", "5" };
            if (daXiaoCbx.Checked == false)
            {
                result.AddRange(allNum);
            }

            for (int i = 0; i < allNum.Count(); i++)
            {
                for (int j = 0; j < bigNum.Count(); j++)
                {
                    if (
                        (
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(1, 1))) && (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(1, 1))) && (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(0, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(1, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(1, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(2, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(2, 1)) - Convert.ToInt32(allNum[i].Substring(0, 1)) == 1))
                        )
                        )
                    {
                        result.Add(allNum[i]);
                    }
                }
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #17
0
        //自定义分解式2
        private string[] cusFJS2()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = cusFJS1();
            if (cusFJTbx2.Text.Length == 0 && cusFJTbx2Auto.Text.Length == 0)
            {
                result.AddRange(allNum);
            }
            if (cusFJTbx2.Text.Length > 0 && cusFJTbx2Auto.Text.Length > 0)
            {
                string cusFJtxt = cusFJTbx2.Text;
                string cusFJtxtAuto = cusFJTbx2Auto.Text;
                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < cusFJtxt.Length; j++)
                        if (
                            //必须只能出现1,2次
                            (allNum[i].Replace(cusFJtxt.Substring(j, 1), "|").Split('|').Length - 1 == 1 || allNum[i].Replace(cusFJtxt.Substring(j, 1), "|").Split('|').Length - 1 == 2)
                            &&
                            //所出数字不同同时都满足属于输入分解式的数字
                            !(cusFJtxt.Contains(allNum[i].Substring(0, 1)) && cusFJtxt.Contains(allNum[i].Substring(1, 1)) && cusFJtxt.Contains(allNum[i].Substring(2, 1)))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                }
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #18
0
        //不定位两码和
        private string[] noLocHeExecute()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = f1Data;
            List<string> noLocItems1 = new List<string>();
            List<string> noLocItems2 = new List<string>();
            string noLocChuGeShu = "";
            foreach (Control ctl in this.Controls)
            {
                if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                {
                    foreach (Control ct in ctl.Controls)
                    {
                        if (ct is CheckBox)
                        {
                            if ((ct as CheckBox).Checked)
                            {
                                noLocChuGeShu += (ct as CheckBox).Text;
                            }
                        }
                    }
                }
            }

            string a = "";
            foreach (Control c in this.noLoc2He1.Controls)
            {
                if (c is CheckBox)
                {
                    if ((c as CheckBox).Checked)
                    {

                        a += ((c as CheckBox).Text);
                    }
                }
            }

            string b = "";
            foreach (Control c in this.noLoc2He2.Controls)
            {
                if (c is CheckBox)
                {
                    if ((c as CheckBox).Checked)
                    {

                        b += ((c as CheckBox).Text);
                    }
                }
            }

            //没选出条件
            if (
                noLocChuGeShu.Length == 0
                ||
                ((noLocChuGeShu.Length > 0 && a.Length == 0) && (noLocChuGeShu.Length > 0 && b.Length == 0))
                )
            {
                result.AddRange(allNum);
            }

            #region 选择出1
            if (noLocChuGeShu.Length > 0 && noLocChuGeShu.Equals("1"))
            {
                foreach (Control ctl in this.Controls)
                {
                    if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                    {
                        foreach (Control ct in ctl.Controls)
                        {
                            if (ct is GroupBox && ct.Text.Equals("两码和1"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                    {
                                        if ((c as CheckBox).Checked)
                                        {

                                            noLocItems1.Add((c as CheckBox).Text);
                                        }
                                    }
                                }
                            }

                            if (ct is GroupBox && ct.Text.Equals("两码和2"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                        if ((c as CheckBox).Checked)
                                            noLocItems2.Add((c as CheckBox).Text);
                                }
                            }
                        }
                    }
                }

                if (noLocItems1.Count > 0 && noLocItems2.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < noLocItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                v1.Substring(v1.Length - 1, 1).Equals(noLocItems1[j])
                                ||
                                v2.Substring(v2.Length - 1, 1).Equals(noLocItems1[j])
                                ||
                                v3.Substring(v3.Length - 1, 1).Equals(noLocItems1[j])
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (noLocItems2.Count > 0 && noLocItems1.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < noLocItems2.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            if (
                                v1.Substring(v1.Length - 1, 1).Equals(noLocItems2[j])
                                ||
                                v2.Substring(v2.Length - 1, 1).Equals(noLocItems2[j])
                                ||
                                v3.Substring(v3.Length - 1, 1).Equals(noLocItems2[j])
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

                if (noLocItems1.Count > 0 && noLocItems2.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            (((noLocItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            ||
                            (noLocItems1.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))))
                            &&
                                !((noLocItems2.Contains(v1.Substring(v1.Length - 1, 1)))
                                ||
                                (noLocItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                                ||
                                (noLocItems2.Contains(v3.Substring(v3.Length - 1, 1)))))
                            ||
                            (((noLocItems2.Contains(v1.Substring(v1.Length - 1, 1)))
                            ||
                            (noLocItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))))
                            &&
                                !((noLocItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                                ||
                                (noLocItems1.Contains(v2.Substring(v2.Length - 1, 1)))
                                ||
                                (noLocItems1.Contains(v3.Substring(v3.Length - 1, 1)))))
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }

                }

            }
            #endregion

            #region 选择出0
            if (noLocChuGeShu.Length > 0 && noLocChuGeShu.Equals("0"))
            {
                foreach (Control ctl in this.Controls)
                {
                    if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                    {
                        foreach (Control ct in ctl.Controls)
                        {
                            if (ct is GroupBox && ct.Text.Equals("两码和1"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                    {
                                        if ((c as CheckBox).Checked)
                                        {

                                            noLocItems1.Add((c as CheckBox).Text);
                                        }
                                    }
                                }
                            }

                            if (ct is GroupBox && ct.Text.Equals("两码和2"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                        if ((c as CheckBox).Checked)
                                            noLocItems2.Add((c as CheckBox).Text);
                                }
                            }
                        }
                    }
                }

                if (noLocItems1.Count > 0 && noLocItems2.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(
                            noLocItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            noLocItems1.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (noLocItems2.Count > 0 && noLocItems1.Count == 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(
                            noLocItems2.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            noLocItems2.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }

                if (noLocItems1.Count > 0 && noLocItems2.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            !(
                            noLocItems1.Contains(v1.Substring(v1.Length - 1, 1))
                            ||
                            noLocItems1.Contains(v2.Substring(v2.Length - 1, 1))
                            ||
                            noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))
                            )
                            )
                        {
                            if (
                                !(
                                noLocItems2.Contains(v1.Substring(v1.Length - 1, 1))
                                ||
                                noLocItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                ||
                                noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }

            }
            #endregion

            #region 选择出2
            if (noLocChuGeShu.Length > 0 && noLocChuGeShu.Equals("2"))
            {
                foreach (Control ctl in this.Controls)
                {
                    if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                    {
                        foreach (Control ct in ctl.Controls)
                        {
                            if (ct is GroupBox && ct.Text.Equals("两码和1"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                    {
                                        if ((c as CheckBox).Checked)
                                        {

                                            noLocItems1.Add((c as CheckBox).Text);
                                        }
                                    }
                                }
                            }

                            if (ct is GroupBox && ct.Text.Equals("两码和2"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                        if ((c as CheckBox).Checked)
                                            noLocItems2.Add((c as CheckBox).Text);
                                }
                            }
                        }
                    }
                }

                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < noLocItems1.Count; j++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                            v1.Substring(v1.Length - 1, 1).Equals(noLocItems1[j])
                            ||
                            v2.Substring(v2.Length - 1, 1).Equals(noLocItems1[j])
                            ||
                            v3.Substring(v3.Length - 1, 1).Equals(noLocItems1[j])
                            )
                        {
                            for (int k = 0; k < noLocItems2.Count; k++)
                            {
                                if (
                                    v1.Substring(v1.Length - 1, 1).Equals(noLocItems2[k])
                                    ||
                                    v2.Substring(v2.Length - 1, 1).Equals(noLocItems2[k])
                                    ||
                                    v3.Substring(v3.Length - 1, 1).Equals(noLocItems2[k])
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,1
            if (noLocChuGeShu.Length > 0 && (noLocChuGeShu.Equals("01") || noLocChuGeShu.Equals("10")))
            {
                foreach (Control ctl in this.Controls)
                {
                    if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                    {
                        foreach (Control ct in ctl.Controls)
                        {
                            if (ct is GroupBox && ct.Text.Equals("两码和1"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                    {
                                        if ((c as CheckBox).Checked)
                                        {

                                            noLocItems1.Add((c as CheckBox).Text);
                                        }
                                    }
                                }
                            }

                            if (ct is GroupBox && ct.Text.Equals("两码和2"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                        if ((c as CheckBox).Checked)
                                            noLocItems2.Add((c as CheckBox).Text);
                                }
                            }
                        }
                    }
                }

                //如果只选了一组并选择出0,1个,等于没选
                if ((noLocItems1.Count > 0 && noLocItems2.Count == 0) || (noLocItems1.Count == 0 && noLocItems2.Count > 0))
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        result.Add(allNum[i]);
                    }
                }

                if (noLocItems1.Count > 0 && noLocItems2.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < noLocItems1.Count; j++)
                        {
                            string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                            string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                            string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();

                            if (
                                !(
                                noLocItems1.Contains(v1.Substring(v1.Length - 1, 1))
                                ||
                                noLocItems1.Contains(v2.Substring(v2.Length - 1, 1))
                                ||
                                noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                                )
                            {
                                if (
                                    !(
                                    noLocItems2.Contains(v1.Substring(v1.Length - 1, 1))
                                    ||
                                    noLocItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                    ||
                                    noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))
                                    )
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }

                            if (
                            (((noLocItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            ||
                            (noLocItems1.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))))
                            &&
                                !((noLocItems2.Contains(v1.Substring(v1.Length - 1, 1)))
                                ||
                                (noLocItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                                ||
                                (noLocItems2.Contains(v3.Substring(v3.Length - 1, 1)))))
                            ||
                            (((noLocItems2.Contains(v1.Substring(v1.Length - 1, 1)))
                            ||
                            (noLocItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))))
                            &&
                                !((noLocItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                                ||
                                (noLocItems1.Contains(v2.Substring(v2.Length - 1, 1)))
                                ||
                                (noLocItems1.Contains(v3.Substring(v3.Length - 1, 1)))))
                            )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }
            }

            #endregion

            #region 选择出0,2
            if (noLocChuGeShu.Length > 0 && (noLocChuGeShu.Equals("02") || noLocChuGeShu.Equals("20")))
            {
                foreach (Control ctl in this.Controls)
                {
                    if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                    {
                        foreach (Control ct in ctl.Controls)
                        {
                            if (ct is GroupBox && ct.Text.Equals("两码和1"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                    {
                                        if ((c as CheckBox).Checked)
                                        {

                                            noLocItems1.Add((c as CheckBox).Text);
                                        }
                                    }
                                }
                            }

                            if (ct is GroupBox && ct.Text.Equals("两码和2"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                        if ((c as CheckBox).Checked)
                                            noLocItems2.Add((c as CheckBox).Text);
                                }
                            }
                        }
                    }
                }

                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < noLocItems1.Count; j++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        if (
                        !(
                        noLocItems1.Contains(v1.Substring(v1.Length - 1, 1))
                        ||
                        noLocItems1.Contains(v2.Substring(v2.Length - 1, 1))
                        ||
                        noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))
                        )
                        )
                        {
                            if (
                                !(
                                noLocItems2.Contains(v1.Substring(v1.Length - 1, 1))
                                ||
                                noLocItems2.Contains(v2.Substring(v2.Length - 1, 1))
                                ||
                                noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))
                                )
                                )
                            {
                                result.Add(allNum[i]);
                            }
                        }

                        if (
                        v1.Substring(v1.Length - 1, 1).Equals(noLocItems1[j])
                        ||
                        v2.Substring(v2.Length - 1, 1).Equals(noLocItems1[j])
                        ||
                        v3.Substring(v3.Length - 1, 1).Equals(noLocItems1[j])
                        )
                        {
                            for (int k = 0; k < noLocItems2.Count; k++)
                            {
                                if (
                                    v1.Substring(v1.Length - 1, 1).Equals(noLocItems2[k])
                                    ||
                                    v2.Substring(v2.Length - 1, 1).Equals(noLocItems2[k])
                                    ||
                                    v3.Substring(v3.Length - 1, 1).Equals(noLocItems2[k])
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                }
            }

            #endregion

            #region 选择出1,2
            if (noLocChuGeShu.Length > 0 && (noLocChuGeShu.Equals("12") || noLocChuGeShu.Equals("21")))
            {
                foreach (Control ctl in this.Controls)
                {
                    if (ctl is GroupBox && ctl.Text.Equals("不定位两码和"))
                    {
                        foreach (Control ct in ctl.Controls)
                        {
                            if (ct is GroupBox && ct.Text.Equals("两码和1"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                    {
                                        if ((c as CheckBox).Checked)
                                        {

                                            noLocItems1.Add((c as CheckBox).Text);
                                        }
                                    }
                                }
                            }

                            if (ct is GroupBox && ct.Text.Equals("两码和2"))
                            {
                                foreach (Control c in ct.Controls)
                                {
                                    if (c is CheckBox)
                                        if ((c as CheckBox).Checked)
                                            noLocItems2.Add((c as CheckBox).Text);
                                }
                            }
                        }
                    }
                }

                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < noLocItems1.Count; j++)
                    {
                        string v1 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1))).ToString();
                        string v2 = (Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();
                        string v3 = (Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1))).ToString();

                        if (
                            (((noLocItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                            ||
                            (noLocItems1.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (noLocItems1.Contains(v3.Substring(v3.Length - 1, 1))))
                            &&
                                !((noLocItems2.Contains(v1.Substring(v1.Length - 1, 1)))
                                ||
                                (noLocItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                                ||
                                (noLocItems2.Contains(v3.Substring(v3.Length - 1, 1)))))
                            ||
                            (((noLocItems2.Contains(v1.Substring(v1.Length - 1, 1)))
                            ||
                            (noLocItems2.Contains(v2.Substring(v2.Length - 1, 1)))
                            ||
                            (noLocItems2.Contains(v3.Substring(v3.Length - 1, 1))))
                            &&
                                !((noLocItems1.Contains(v1.Substring(v1.Length - 1, 1)))
                                ||
                                (noLocItems1.Contains(v2.Substring(v2.Length - 1, 1)))
                                ||
                                (noLocItems1.Contains(v3.Substring(v3.Length - 1, 1)))))
                            )
                        {
                            result.Add(allNum[i]);
                        }

                        if (
                        v1.Substring(v1.Length - 1, 1).Equals(noLocItems1[j])
                        ||
                        v2.Substring(v2.Length - 1, 1).Equals(noLocItems1[j])
                        ||
                        v3.Substring(v3.Length - 1, 1).Equals(noLocItems1[j])
                        )
                        {
                            for (int k = 0; k < noLocItems2.Count; k++)
                            {
                                if (
                                    v1.Substring(v1.Length - 1, 1).Equals(noLocItems2[k])
                                    ||
                                    v2.Substring(v2.Length - 1, 1).Equals(noLocItems2[k])
                                    ||
                                    v3.Substring(v3.Length - 1, 1).Equals(noLocItems2[k])
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                }

            }
            #endregion

            #region 选择出0,1,2
            if (noLocChuGeShu.Contains("0") && noLocChuGeShu.Contains("1") && noLocChuGeShu.Contains("2"))
            {
                result.AddRange(allNum);
            }
            #endregion

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();//排序
            return result1.ToArray();
        }
Beispiel #19
0
        /// <summary>
        /// 全态计算
        /// </summary>
        /// <param name="lastResult"></param>
        /// <returns></returns>
        private List <string> quanTaiCal(List <string> lastResult)
        {
            System.Collections.Generic.List <string> result = new System.Collections.Generic.List <string>();
            string[] allNum     = lastResult.ToArray();
            string[] zhiNums    = new string[] { "1", "2", "3", "5", "7" };
            string[] danNums    = new string[] { "1", "3", "5", "7", "9" };
            string[] xiaoNums   = new string[] { "0", "1", "2", "3", "4" };
            string[] heNums     = new string[] { "0", "4", "6", "8", "9" };
            string[] shuangNums = new string[] { "0", "2", "4", "6", "8" };
            string[] daNums     = new string[] { "5", "6", "7", "8", "9" };

            int cbkCount = 0;

            foreach (Control ctls in this.quantaiGpb.Controls)
            {
                if (ctls is CheckBox)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        cbkCount++;
                        if (ctls.Name.Equals("zuSan"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                                int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                                int c = Convert.ToInt16(allNum[i].Substring(2, 1));
                                if (
                                    a == b || a == c || b == c
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("zuLiu"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                                int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                                int c = Convert.ToInt16(allNum[i].Substring(2, 1));
                                if (
                                    a != b && a != c && b != c
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
                }
            }

            if (cbkCount == 0)
            {
                result.AddRange(allNum);
            }

            List <string> result1 = result.Distinct().ToList();//去除重复项

            return(result1);
        }
Beispiel #20
0
        //凤尾质合
        private string[] weiZh()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = chaHe();

            List<string> nums = new List<string>();
            foreach (Control ctls in this.weiZhGpb.Controls)
            {
                if ((ctls as CheckBox).Checked == true)
                {
                    nums.Add(ctls.Text);
                }
            }

            int[] zhiNums = new int[] { 1, 2, 3, 5, 7 };
            int[] HeNums = new int[] { 0, 4, 6, 8, 9 };

            if (nums.Count > 0)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < nums.Count(); j++)
                    {
                        int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                        int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                        int c = Convert.ToInt16(allNum[i].Substring(2, 1));

                        if (nums[0].Equals("质"))
                        {
                            if (zhiNums.Contains(c))
                            {
                                result.Add(allNum[i]);
                            }
                        }

                        if (nums[0].Equals("和"))
                        {
                            if (HeNums.Contains(c))
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }
            }
            else
            {
                result.AddRange(allNum);
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #21
0
        //分解式
        public string[] fenJieShi()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string fenJieShi = "";
            foreach (Control ctl in this.fjsGpb.Controls) //this可以根据实际情况修改为this.groupBreakFast,this.groupLunch,this.groupDinner
            {
                if (ctl is CheckBox)
                {
                    if ((ctl as CheckBox).Checked == true)
                        fenJieShi += (ctl as CheckBox).Text;
                }
            }

            string[] allNum = cusFJS2();
            string ans = "";
            if (fenJieShi.Equals(""))
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Equals("单双分解"))
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    if ((((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 0))
                        || (((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 1)))
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Equals("大小分解"))
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a1 = Convert.ToInt32(allNum[i].Substring(0, 1)), b1 = Convert.ToInt32(allNum[i].Substring(1, 1)), c1 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    int a2 = Convert.ToInt32(allNum[i].Substring(0, 1)), b2 = Convert.ToInt32(allNum[i].Substring(1, 1)), c2 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    if (((a1 < 5) && (b1 < 5) && (c1 < 5)) || ((a2 > 4) && (b2 > 4) && (c2 > 4)))
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Equals("质合分解"))
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a1 = Convert.ToInt32(allNum[i].Substring(0, 1)), b1 = Convert.ToInt32(allNum[i].Substring(1, 1)), c1 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    int a2 = Convert.ToInt32(allNum[i].Substring(0, 1)), b2 = Convert.ToInt32(allNum[i].Substring(1, 1)), c2 = Convert.ToInt32(allNum[i].Substring(2, 1));

                    if ((((a1 == 1) || (a1 == 2) || (a1 == 3) || (a1 == 5) || (a1 == 7))
                        && ((b1 == 1) || (b1 == 2) || (b1 == 3) || (b1 == 5) || (b1 == 7))
                        && ((c1 == 1) || (c1 == 2) || (c1 == 3) || (c1 == 5) || (c1 == 7)))
                        ||
                        (((a2 == 0) || (a2 == 4) || (a2 == 6) || (a2 == 8) || (a2 == 9))
                        && ((b2 == 0) || (b2 == 4) || (b2 == 6) || (b2 == 8) || (b2 == 9))
                        && ((c2 == 0) || (c2 == 4) || (c2 == 6) || (c2 == 8) || (c2 == 9))))
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Contains("单双分解") && fenJieShi.Contains("质合分解") && fenJieShi.Length == 8)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a1 = Convert.ToInt32(allNum[i].Substring(0, 1)), b1 = Convert.ToInt32(allNum[i].Substring(1, 1)), c1 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    int a2 = Convert.ToInt32(allNum[i].Substring(0, 1)), b2 = Convert.ToInt32(allNum[i].Substring(1, 1)), c2 = Convert.ToInt32(allNum[i].Substring(2, 1));

                    if ((((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 0))
                        || (((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 1))
                        || (((a1 == 1) || (a1 == 2) || (a1 == 3) || (a1 == 5) || (a1 == 7))
                        && ((b1 == 1) || (b1 == 2) || (b1 == 3) || (b1 == 5) || (b1 == 7))
                        && ((c1 == 1) || (c1 == 2) || (c1 == 3) || (c1 == 5) || (c1 == 7)))
                        ||
                        (((a2 == 0) || (a2 == 4) || (a2 == 6) || (a2 == 8) || (a2 == 9))
                        && ((b2 == 0) || (b2 == 4) || (b2 == 6) || (b2 == 8) || (b2 == 9))
                        && ((c2 == 0) || (c2 == 4) || (c2 == 6) || (c2 == 8) || (c2 == 9))))
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Contains("单双分解") && fenJieShi.Contains("大小分解") && fenJieShi.Length == 8)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a1 = Convert.ToInt32(allNum[i].Substring(0, 1)), b1 = Convert.ToInt32(allNum[i].Substring(1, 1)), c1 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    int a2 = Convert.ToInt32(allNum[i].Substring(0, 1)), b2 = Convert.ToInt32(allNum[i].Substring(1, 1)), c2 = Convert.ToInt32(allNum[i].Substring(2, 1));

                    if ((((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 0))
                        || (((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 1))
                        || ((a1 < 5) && (b1 < 5) && (c1 < 5)) || ((a2 > 4) && (b2 > 4) && (c2 > 4))
                        )
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Contains("大小分解") && fenJieShi.Contains("质合分解") && fenJieShi.Length == 8)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a1 = Convert.ToInt32(allNum[i].Substring(0, 1)), b1 = Convert.ToInt32(allNum[i].Substring(1, 1)), c1 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    int a2 = Convert.ToInt32(allNum[i].Substring(0, 1)), b2 = Convert.ToInt32(allNum[i].Substring(1, 1)), c2 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    if (((a1 < 5) && (b1 < 5) && (c1 < 5)) || ((a2 > 4) && (b2 > 4) && (c2 > 4))
                        || (((a1 == 1) || (a1 == 2) || (a1 == 3) || (a1 == 5) || (a1 == 7))
                        && ((b1 == 1) || (b1 == 2) || (b1 == 3) || (b1 == 5) || (b1 == 7))
                        && ((c1 == 1) || (c1 == 2) || (c1 == 3) || (c1 == 5) || (c1 == 7)))
                        ||
                        (((a2 == 0) || (a2 == 4) || (a2 == 6) || (a2 == 8) || (a2 == 9))
                        && ((b2 == 0) || (b2 == 4) || (b2 == 6) || (b2 == 8) || (b2 == 9))
                        && ((c2 == 0) || (c2 == 4) || (c2 == 6) || (c2 == 8) || (c2 == 9)))
                        )
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            if (fenJieShi.Contains("单双分解") && fenJieShi.Contains("大小分解") && fenJieShi.Contains("质合分解") && fenJieShi.Length == 12)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a1 = Convert.ToInt32(allNum[i].Substring(0, 1)), b1 = Convert.ToInt32(allNum[i].Substring(1, 1)), c1 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    int a2 = Convert.ToInt32(allNum[i].Substring(0, 1)), b2 = Convert.ToInt32(allNum[i].Substring(1, 1)), c2 = Convert.ToInt32(allNum[i].Substring(2, 1));
                    if ((((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 0) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 0))
                        || (((Convert.ToInt32(allNum[i].Substring(0, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(1, 1)) % 2) == 1) && ((Convert.ToInt32(allNum[i].Substring(2, 1)) % 2) == 1))
                        || ((a1 < 5) && (b1 < 5) && (c1 < 5)) || ((a2 > 4) && (b2 > 4) && (c2 > 4))
                        || (((a1 == 1) || (a1 == 2) || (a1 == 3) || (a1 == 5) || (a1 == 7))
                        && ((b1 == 1) || (b1 == 2) || (b1 == 3) || (b1 == 5) || (b1 == 7))
                        && ((c1 == 1) || (c1 == 2) || (c1 == 3) || (c1 == 5) || (c1 == 7)))
                        ||
                        (((a2 == 0) || (a2 == 4) || (a2 == 6) || (a2 == 8) || (a2 == 9))
                        && ((b2 == 0) || (b2 == 4) || (b2 == 6) || (b2 == 8) || (b2 == 9))
                        && ((c2 == 0) || (c2 == 4) || (c2 == 6) || (c2 == 8) || (c2 == 9)))
                        )
                    {
                        allNum[i] = "";
                    }
                    ans += allNum[i];
                    result.Add(allNum[i]);
                }
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();

            for (int i = 0; i < result1.Count; i++)
            {
                if (result1[i].Equals(""))
                {
                    result1.Remove(result1[i]);
                }
            }
            return result1.ToArray();
        }
Beispiel #22
0
        //和值
        public string[] sumZhi()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = locChaExecute();

            if (this.killHeZhi.Checked == false)
            {
                List<int> nums = new List<int>();
                foreach (Control ctls in this.sumZhiGbp.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums.Add(Convert.ToInt16(ctls.Text));
                    }
                }
                if (nums.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < nums.Count(); j++)
                        {
                            int allNumSum = Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1));
                            if (
                                allNumSum == nums[j]
                            )
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                }
                else
                {
                    result.AddRange(allNum);
                }
                List<string> result1 = result.Distinct().ToList();//去除重复项
                return result1.ToArray();
            }
            else
            {
                List<int> nums = new List<int>();
                result.AddRange(allNum);
                foreach (Control ctls in this.sumZhiGbp.Controls)
                {
                    if ((ctls as CheckBox).Checked == true)
                    {
                        nums.Add(Convert.ToInt16(ctls.Text));
                    }
                }
                if (nums.Count > 0)
                {
                    for (int i = 0; i < allNum.Count(); i++)
                    {
                        for (int j = 0; j < nums.Count(); j++)
                        {
                            int allNumSum = Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1));
                            if (
                                allNumSum == nums[j]
                            )
                            {
                                result.Remove(allNum[i]);
                            }
                        }
                    }
                }
                List<string> result1 = result.Distinct().ToList();//去除重复项
                return result1.ToArray();
            }
        }
Beispiel #23
0
        //平衡减
        private string[] phJian()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = fanBianQiuCal();

            if (jianCkb.Checked == true)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    int a = Convert.ToInt16(allNum[i].Substring(0, 1));
                    int b = Convert.ToInt16(allNum[i].Substring(1, 1));
                    int c = Convert.ToInt16(allNum[i].Substring(2, 1));

                    int leftvv = (10 - a + b);
                    int rightvv = (10 - b + c);
                    if (leftvv < rightvv)
                    {
                        result.Add(allNum[i]);
                    }
                }
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();
            return result1.ToArray();
        }
Beispiel #24
0
        //平面胆码组四
        private string[] pingMianBiChu4()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            List<string> pingMianBiChu = new List<string>();
            List<string> pingMianBiChuGeShu = new List<string>();
            foreach (Control ctl in this.groupBox11.Controls) //this可以根据实际情况修改为this.groupBreakFast,this.groupLunch,this.groupDinner
            {
                if (ctl is CheckBox)
                {
                    if ((ctl as CheckBox).Checked == true)
                    {
                        if (!ctl.Name.Contains("fourZu"))
                        {
                            pingMianBiChu.Add((ctl as CheckBox).Text);
                        }
                        if (ctl.Name.Contains("fourZu"))
                        {
                            pingMianBiChuGeShu.Add((ctl as CheckBox).Text);
                        }
                    }
                }
            }

            List<string> allNum = new List<string>();
            allNum.AddRange(pingMianBiChu3());
            result.AddRange(pingMianDanMaOutput(allNum, pingMianBiChu, pingMianBiChuGeShu));

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #25
0
        //号码属性
        public string[] numberPro()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = longTouFengWei();
            string[] zhiNums = new string[] { "1", "2", "3", "5", "7" };
            string[] danNums = new string[] { "1", "3", "5", "7", "9" };
            string[] xiaoNums = new string[] { "0", "1", "2", "3", "4" };

            int cbkCount = 0;
            foreach (Control ctls in this.numberProGpb.Controls)
            {
                if (ctls is CheckBox)
                    if ((ctls as CheckBox).Checked == true)
                    {
                        cbkCount++;
                        if (ctls.Name.Equals("zs0"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (!zhiNums.Contains(a) && !zhiNums.Contains(b) && !zhiNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("ds0"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (!danNums.Contains(a) && !danNums.Contains(b) && !danNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("xs0"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (!xiaoNums.Contains(a) && !xiaoNums.Contains(b) && !xiaoNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }

                        if (ctls.Name.Equals("zs1"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (zhiNums.Contains(a) && !zhiNums.Contains(b) && !zhiNums.Contains(c))
                                    ||
                                    (!zhiNums.Contains(a) && zhiNums.Contains(b) && !zhiNums.Contains(c))
                                    ||
                                    (!zhiNums.Contains(a) && !zhiNums.Contains(b) && zhiNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("ds1"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (danNums.Contains(a) && !danNums.Contains(b) && !danNums.Contains(c))
                                    ||
                                    (!danNums.Contains(a) && danNums.Contains(b) && !danNums.Contains(c))
                                    ||
                                    (!danNums.Contains(a) && !danNums.Contains(b) && danNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("xs1"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (xiaoNums.Contains(a) && !xiaoNums.Contains(b) && !xiaoNums.Contains(c))
                                    ||
                                    (!xiaoNums.Contains(a) && xiaoNums.Contains(b) && !xiaoNums.Contains(c))
                                    ||
                                    (!xiaoNums.Contains(a) && !xiaoNums.Contains(b) && xiaoNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }

                        if (ctls.Name.Equals("zs2"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (zhiNums.Contains(a) && zhiNums.Contains(b) && !zhiNums.Contains(c))
                                    ||
                                    (!zhiNums.Contains(a) && zhiNums.Contains(b) && zhiNums.Contains(c))
                                    ||
                                    (zhiNums.Contains(a) && !zhiNums.Contains(b) && zhiNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("ds2"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (danNums.Contains(a) && danNums.Contains(b) && !danNums.Contains(c))
                                    ||
                                    (!danNums.Contains(a) && danNums.Contains(b) && danNums.Contains(c))
                                    ||
                                    (danNums.Contains(a) && !danNums.Contains(b) && danNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("xs2"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (xiaoNums.Contains(a) && xiaoNums.Contains(b) && !xiaoNums.Contains(c))
                                    ||
                                    (!xiaoNums.Contains(a) && xiaoNums.Contains(b) && xiaoNums.Contains(c))
                                    ||
                                    (xiaoNums.Contains(a) && !xiaoNums.Contains(b) && xiaoNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }

                        if (ctls.Name.Equals("zs3"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (zhiNums.Contains(a) && zhiNums.Contains(b) && zhiNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("ds3"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (danNums.Contains(a) && danNums.Contains(b) && danNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                        else if (ctls.Name.Equals("xs3"))
                        {
                            for (int i = 0; i < allNum.Count(); i++)
                            {
                                string a = allNum[i].Substring(0, 1);
                                string b = allNum[i].Substring(1, 1);
                                string c = allNum[i].Substring(2, 1);
                                if (
                                    (xiaoNums.Contains(a) && xiaoNums.Contains(b) && xiaoNums.Contains(c))
                                    )
                                {
                                    result.Add(allNum[i]);
                                }
                            }
                        }
                    }
            }

            if (cbkCount == 0)
            {
                result.AddRange(allNum);
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();
            return result1.ToArray();
        }
Beispiel #26
0
        /// <summary>
        /// 平面胆码计算
        /// </summary>
        /// <param name="allNum"></param>
        /// <param name="pingMianBiChu"></param>
        /// <param name="pingMianBiChuGeShu"></param>
        /// <returns></returns>
        private List<string> pingMianDanMaOutput(List<string> allNum, List<string> pingMianBiChu, List<string> pingMianBiChuGeShu)
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();

            if (pingMianBiChu.Count == 0)
            {
                result.AddRange(allNum);
            }
            if (pingMianBiChu.Count == 1)
            {
                for (int i = 0; i < pingMianBiChu.Count; i++)
                {
                    for (int j = 0; j < pingMianBiChuGeShu.Count; j++)
                    {
                        for (int k = 0; k < allNum.Count(); k++)
                        {
                            if (Tools.SubstringCount(allNum[k], pingMianBiChu[i]) == Convert.ToInt16(pingMianBiChuGeShu[j]))
                            {
                                result.Add(allNum[k]);
                            }
                        }
                    }
                }
            }
            #region 平面必出选数多余1个
            if (pingMianBiChu.Count > 1)
            {
                string ppm = "";
                for (int i = 0; i < pingMianBiChu.Count; i++)
                {
                    ppm += pingMianBiChu[i];
                }

                for (int i = 0; i < allNum.Count(); i++)
                {
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3"))//选2个或以上出0,1,2,3个
                    {
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 3)//选2个或以上出0,1,2个
                    {
                        string x = allNum[i].Substring(0, 1), y = allNum[i].Substring(1, 1), z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3"))//选2个或以上出1,2,3个
                    {
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 2)//选2个或以上出1,2个
                    {
                        string x = allNum[i].Substring(0, 1), y = allNum[i].Substring(1, 1), z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }

                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Count == 1)//选2个或以上出0个
                    {
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Count == 2)//选2个或以上出0,1个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);

                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 2)//选2个或以上出0,2个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))) && !((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 2)//选2个或以上出0,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }

                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Count == 1)//选2个或以上出1个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);

                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Count == 1)//选2个或以上出2个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))) && !((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 1)//选2个或以上出3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 2)//选2个或以上出1,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if ((allNum[i].Contains(jbk)))
                            {
                                if ((!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z)))) || ((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("1") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 3)//选2个或以上出0,1,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if ((allNum[i].Contains(jbk)))
                            {
                                if ((!((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z)))) || ((pingMianBiChu.Contains(x)) && (pingMianBiChu.Contains(y)) && (pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 2)//选2个或以上出2,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                    }
                    if (pingMianBiChu.Count > 1 && pingMianBiChuGeShu.Contains("0") && pingMianBiChuGeShu.Contains("2") && pingMianBiChuGeShu.Contains("3") && pingMianBiChuGeShu.Count == 3)//选2个或以上出0,2,3个
                    {
                        string x = allNum[i].Substring(0, 1);
                        string y = allNum[i].Substring(1, 1);
                        string z = allNum[i].Substring(2, 1);
                        for (int j = 0; j < pingMianBiChu.Count; j++)
                        {
                            string jbk = pingMianBiChu[j];
                            if (allNum[i].Contains(jbk))
                            {
                                if (((pingMianBiChu.Contains(x) && pingMianBiChu.Contains(y)) || (pingMianBiChu.Contains(x) && pingMianBiChu.Contains(z)) || (pingMianBiChu.Contains(y) && pingMianBiChu.Contains(z))))
                                    result.Add(allNum[i]);
                            }
                        }
                        if (allNum[i].IndexOfAny(ppm.ToCharArray(0, ppm.Length)) < 0)
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
            #endregion
            }
            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1;
        }
Beispiel #27
0
        //平衡指数
        public string[] pingHengZhiShu()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = fanBianQiuCal();

            int overMy = 0;
            List<int> nums = new List<int>();
            foreach (Control ctls in this.pHZSGpb.Controls)
            {
                bool isNum = isNumber(ctls.Text);
                if (ctls is CheckBox)
                {
                    if ((ctls as CheckBox).Checked == true && isNum == true)
                    {
                        nums.Add(Convert.ToInt16(ctls.Text));
                    }
                }
            }

            if (nums.Count == 1)
            {
                if (nums.Contains(1))
                {
                    if (jiaCkb.Checked == true)
                    {
                        overMy++;
                        result.AddRange(phJia());
                    }

                    if (jianCkb.Checked == true)
                    {
                        overMy++;
                        result.AddRange(phJian());
                    }

                    if (dengCkb.Checked == true)
                    {
                        overMy++;
                        result.AddRange(phDeng());
                    }
                }

                if (nums.Contains(0))
                {
                    if (jiaCkb.Checked == true)
                    {
                        overMy++;
                        result.AddRange(phJia());
                    }

                    if (jianCkb.Checked == true)
                    {
                        overMy++;
                        result.AddRange(phJian());
                    }

                    if (dengCkb.Checked == true)
                    {
                        overMy++;
                        result.AddRange(phDeng());
                    }

                    List<string> temp = new List<string>();
                    temp.AddRange(chaHe());
                    for (int i = 0; i < result.Count(); i++)
                    {
                        temp.Remove(result[i]);
                    }
                    result.Clear();
                    result.AddRange(temp);
                }

            }

            if (nums.Count == 2)
            {
                result.AddRange(allNum);
            }

            if (overMy == 0)
                result.AddRange(allNum);

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();
            return result1.ToArray();
        }
Beispiel #28
0
        //临码之质临
        private string[] zhiLin()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = shaQiHao();
            string[] bigNum = { "1", "2", "3" };//,"5","7"

            for (int i = 0; i < allNum.Count(); i++)
            {
                for (int j = 0; j < bigNum.Count(); j++)
                {
                    if (
                        (
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(1, 1))) && (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(1, 1))) && (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(0, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(1, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(1, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(2, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1)) == 1))
                        ||
                        ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(2, 1)) - Convert.ToInt32(allNum[i].Substring(0, 1)) == 1))
                        )
                        )
                    {
                        result.Add(allNum[i]);
                    }
                }
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #29
0
        //合值
        private string[] heZhi()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = f3Data;

            List<int> nums = new List<int>();
            foreach (Control ctls in this.heZhiGpb.Controls)
            {
                bool isNum = isNumber(ctls.Text);
                if ((ctls as CheckBox).Checked == true && isNum == true)
                {
                    nums.Add(Convert.ToInt16(ctls.Text));
                }
            }

            if (nums.Count > 0)
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < nums.Count(); j++)
                    {
                        int allNumSum = Convert.ToInt32(allNum[i].Substring(0, 1)) + Convert.ToInt32(allNum[i].Substring(1, 1)) + Convert.ToInt32(allNum[i].Substring(2, 1));
                        if (
                            allNumSum.ToString().Substring(allNumSum.ToString().Length - 1, 1) == nums[j].ToString()
                        )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
            }
            else
            {
                result.AddRange(allNum);
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #30
0
        //临码之质临
        private string[] zhiLinSha()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = daXiaoSha();
            string[] bigNum = { "1", "2", "3", "5", "7" };
            if (zhiLinCbx.Checked == false)
            {
                result.AddRange(allNum);
            }

            if (zhiLinCbx.Checked && linMaShaQuCbx.Checked)//质临杀去
            {
                for (int i = 0; i < allNum.Count(); i++)
                {
                    for (int j = 0; j < bigNum.Count(); j++)
                    {
                        if (
                            !(
                            ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(1, 1))) && (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1)) == 1))
                            ||
                            ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(1, 1))) && (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(0, 1)) == 1))
                            ||
                            ((bigNum.Contains(allNum[i].Substring(1, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(1, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1)) == 1))
                            ||
                            ((bigNum.Contains(allNum[i].Substring(1, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(2, 1)) - Convert.ToInt32(allNum[i].Substring(1, 1)) == 1))
                            ||
                            ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(0, 1)) - Convert.ToInt32(allNum[i].Substring(2, 1)) == 1))
                            ||
                            ((bigNum.Contains(allNum[i].Substring(0, 1)) && bigNum.Contains(allNum[i].Substring(2, 1))) && (Convert.ToInt32(allNum[i].Substring(2, 1)) - Convert.ToInt32(allNum[i].Substring(0, 1)) == 1))
                            )
                            )
                        {
                            result.Add(allNum[i]);
                        }
                    }
                }
            }
            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
Beispiel #31
0
        /// <summary>
        /// all_setting.txtから検索用の情報を取得して指定のコンボボックスへアイテム追加
        /// </summary>
        /// <param name="sender">アイテム登録対象のコンボボックス</param>
        /// <param name="folder_name">検索する対象のフォルダまでの絶対パス</param>
        private void set_cmb_data2(object sender, string folder_name)
        {
            folder_name = @"C:\Users\GFIT\" + folder_name;

            if (sender != null)
            {
                System.Windows.Forms.ComboBox cmb_target = (System.Windows.Forms.ComboBox)sender;

                //格納用配列を生成
                string[] ary1 = new string[] { };

                //配列をコレクションに変換する
                System.Collections.Generic.List <string> strList = new System.Collections.Generic.List <string>(ary1);

                // all_settingファイルを開く
                using (var sr = new System.IO.StreamReader(File_CTRL.get_CodeBase_path() + "\\all_setting.txt", Encoding.GetEncoding("SJIS")))
                {
                    // ストリームの末尾まで繰り返す
                    while (!sr.EndOfStream)
                    {
                        // ファイルから一行読み込む
                        var line = sr.ReadLine();
                        // 読み込んだ一行をカンマ毎に分けて配列に格納する
                        var values = line.Split('\\', ',');

                        // Containsで上位フォルダ指定と一致しているか判定
                        if (line.Contains(folder_name))
                        {
                            int i = 0;
                            //コンボボックスの名前でcase分け
                            switch (cmb_target.Name)
                            {
                            case "cmb_stcUser2":
                                i = 3;
                                break;

                            case "cmb_mt4SV2":
                                i = 4;
                                break;

                            case "cmb_mt4ID2":
                                i = 5;
                                break;

                            case "cmb_CCY2":
                                i = 6;
                                break;

                            case "cmb_Time_Period2":
                                i = 7;
                                break;

                            case "cmb_EA_ID2":
                                i = 8;
                                break;
                            }

                            strList.Add(values[i]);
                        }
                    }
                }

                if (strList.Count > 0)
                {
                    // 一意の要素を抜き出して、配列に変換する
                    string[] resultArray = strList.Distinct().ToArray();

                    // 設定前に一旦クリア
                    cmb_target.Items.Clear();

                    foreach (string subFolder in resultArray)
                    {
                        // 列挙された情報をcomboboxに設定
                        cmb_target.Items.Add(subFolder);
                    }
                }
            }
        }
Beispiel #32
0
        /// <summary>
        /// 凹凸升降平综合控制
        /// </summary>
        /// <returns></returns>
        private string[] allAoTu()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();

            if (aoCbx.Checked == true)
            {
                result.AddRange(ao());
            }

            if (tuCbx.Checked == true)
            {
                result.AddRange(tu());
            }

            if (shengCbx.Checked == true)
            {
                result.AddRange(sheng());
            }

            if (jiangCbx.Checked == true)
            {
                result.AddRange(jiang());
            }

            if (pingCbx.Checked == true)
            {
                result.AddRange(ping());
            }

            if (aoCbx.Checked == false && tuCbx.Checked == false && shengCbx.Checked == false && jiangCbx.Checked == false && pingCbx.Checked == false)
            {
                result.AddRange(linMa());
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            result1.Sort();//排序
            return result1.ToArray();
        }
Beispiel #33
0
        //凹凸之凹
        private string[] ao()
        {
            System.Collections.Generic.List<string> result = new System.Collections.Generic.List<string>();
            string[] allNum = linMa();

            for (int i = 0; i < allNum.Count(); i++)
            {
                if (
                    Convert.ToInt32(allNum[i].Substring(0, 1)) > Convert.ToInt32(allNum[i].Substring(1, 1))
                    &&
                    Convert.ToInt32(allNum[i].Substring(2, 1)) > Convert.ToInt32(allNum[i].Substring(1, 1))
                    )
                {
                    result.Add(allNum[i]);
                }
            }

            List<string> result1 = result.Distinct().ToList();//去除重复项
            return result1.ToArray();
        }
 private void SetUpZoom()
 {
     if (ZoomLevelStack != null)
     {
         System.Collections.Generic.List<double> resolutions = new System.Collections.Generic.List<double>();
         foreach (Layer layer in Map.Layers)
         {
             if (layer is TiledMapServiceLayer)
             {
                 TiledMapServiceLayer tlayer = layer as TiledMapServiceLayer;
                 if (tlayer.TileInfo == null || tlayer.TileInfo.Lods == null) continue;
                 var res = from t in tlayer.TileInfo.Lods
                           select t.Resolution;
                 resolutions.AddRange(res);
             }
         }
         if (resolutions.Count < 1)
             return;
         resolutions.Sort();
         layerResolutions = resolutions.Distinct().Reverse().ToArray();
         StackPanel sp = ZoomLevelStack;
         int min = 0;
         int max = layerResolutions.Length - 1;
         int numLevels = max + 1 - min;
         double levelHeight = (100 / numLevels);
         for (int i = min; i <= max; i++)
         {
             SolidColorBrush brush = setLevelBrush(i);
             Border levelBorder = new Border()
             {
                 BorderThickness = new Thickness(1),
                 CornerRadius = new CornerRadius(1),
                 Height = levelHeight,
                 Width = 18,
                 BorderBrush = new SolidColorBrush(Color.FromArgb(255, 0, 0, 0)),
                 Background = brush,
                 Tag = i
             };
             levelBorder.MouseLeftButtonDown += levelBorder_MouseLeftButtonDown;
             levelBorder.MouseMove += levelBorder_MouseMove;
             levelBorder.MouseLeftButtonUp += levelBorder_MouseLeftButtonUp;
             sp.Children.Add(levelBorder);
         }
         sp.MouseLeave += new MouseEventHandler(sp_MouseLeave);
         zoomSetUp = true;
     }
 }