C# 如果开关盒中的项目包含在列表中,如何以独占方式添加该项目

C# 如果开关盒中的项目包含在列表中,如何以独占方式添加该项目,c#,winforms,C#,Winforms,列表上的项目会动态更改 在两个条件下添加到combobox的项: 它们包含在合适的列表中 它们通过了开关箱条件 List<string> suitable = new List<string>() { "ASTM", "A216/DIN", "A351/DIN", "A395/DIN", "DIN123" }; string material = comboBox10.

列表上的项目会动态更改

在两个条件下添加到combobox的项:

  • 它们包含在合适的列表中

  • 它们通过了开关箱条件

    List<string> suitable = new List<string>() { "ASTM", "A216/DIN", "A351/DIN", "A395/DIN", "DIN123" };
    
    string material = comboBox10.SelectedItem.ToString();
    
         switch (material)
         {
             case "PN16":
             case "PN25":
             case "CL150":
             //Add only if item in the LIST suitable:
                 comboBox25.Items.Clear();
                 comboBox25.Items.Add("ASTM A216/DIN"); //NOT Add
                 comboBox25.Items.Add("DIN 1.0619"); //NOT Add
                 comboBox25.Items.Add("A216/DIN"); //ADD
    
                 break;
             case "PN40":
             case "PN63":
             case "PN100":
             case "CL300":
             case "CL600":
                 //Add only If in the List
                 comboBox25.Items.Clear();
    
                 comboBox25.Items.Add("DIN 1.0619"); //NOT ADD
                 comboBox25.Items.Add("A351/DIN"); //add
                 comboBox25.Items.Add("A216/DIN"); //add
                 comboBox25.Items.Add("ASTM"); //add
    
                 break;
         }
         comboBox25.SelectedIndex = 0;
    
    List applicate=new List(){“ASTM”、“A216/DIN”、“A351/DIN”、“A395/DIN”、“DIN123”};
    string material=comboBox10.SelectedItem.ToString();
    开关(材料)
    {
    案例“PN16”:
    案例“PN25”:
    案例“CL150”:
    //仅当列表中的项目合适时才添加:
    comboBox25.Items.Clear();
    comboBox25.Items.Add(“ASTM A216/DIN”);//不添加
    comboBox25.Items.Add(“DIN 1.0619”);//不添加
    comboBox25.Items.Add(“A216/DIN”);//Add
    打破
    案例“PN40”:
    案例“PN63”:
    案例“PN100”:
    案例“CL300”:
    案例“CL600”:
    //仅当在列表中时添加
    comboBox25.Items.Clear();
    comboBox25.Items.Add(“DIN 1.0619”);//不添加
    comboBox25.Items.Add(“A351/DIN”);//Add
    comboBox25.Items.Add(“A216/DIN”);//Add
    comboBox25.Items.Add(“ASTM”);//Add
    打破
    }
    comboBox25.SelectedIndex=0;
    

  • 添加之前,只需检查项目是否在
    合适的范围内
    ,例如通过使用
    包含

    List<string> suitable = new List<string>() { "ASTM", "A216/DIN", "A351/DIN", "A395/DIN", "DIN123" };
    
    string material = comboBox10.SelectedItem.ToString();
    
    switch (material)
    {
        case "PN16":
        case "PN25":
        case "CL150":
        //Add only if item in the LIST suitable:
            comboBox25.Items.Clear();
            var candidates = new[] { "ASTM A216/DIN", "DIN 1.0619", "A216/DIN"};
            foreach(var c in candidates)
                if(suitable.Contains(c)) 
                    comboBox25.Items.Add(c);
            break;
        case "PN40":
        case "PN63":
        case "PN100":
        case "CL300":
        case "CL600":
            //Add only If in the List
            comboBox25.Items.Clear();
            var candidates = new[] { "DIN 1.0619", "A351/DIN", "A216/DIN", "ASTM"};
            foreach(var c in candidates)
                if(suitable.Contains(c)) 
                    comboBox25.Items.Add(c);
            break;
    }
    comboBox25.SelectedIndex = 0;
    

    添加之前,只需检查项目是否在
    合适的范围内
    ,例如通过使用
    包含

    List<string> suitable = new List<string>() { "ASTM", "A216/DIN", "A351/DIN", "A395/DIN", "DIN123" };
    
    string material = comboBox10.SelectedItem.ToString();
    
    switch (material)
    {
        case "PN16":
        case "PN25":
        case "CL150":
        //Add only if item in the LIST suitable:
            comboBox25.Items.Clear();
            var candidates = new[] { "ASTM A216/DIN", "DIN 1.0619", "A216/DIN"};
            foreach(var c in candidates)
                if(suitable.Contains(c)) 
                    comboBox25.Items.Add(c);
            break;
        case "PN40":
        case "PN63":
        case "PN100":
        case "CL300":
        case "CL600":
            //Add only If in the List
            comboBox25.Items.Clear();
            var candidates = new[] { "DIN 1.0619", "A351/DIN", "A216/DIN", "ASTM"};
            foreach(var c in candidates)
                if(suitable.Contains(c)) 
                    comboBox25.Items.Add(c);
            break;
    }
    comboBox25.SelectedIndex = 0;
    

    您能否进一步指定您想要实现的具体目标?测试它们是否在包含以下内容的列表中:如果(combox25.contains(“DIN 1.0619”),我想要实现的内容已在代码中注释。例如,“PN16”中的材料,唯一要添加到combox25的项目是“A216/DIN”因为它是合适列表中唯一匹配的项目。使用
    字典可以让您的生活更轻松。您可以进一步指定您想要实现的目标吗?测试它们是否在包含:if(combox25.contains(“DIN 1.0619”)的列表中我想实现的是已经对代码进行了注释。例如,“PN16”中的材料,唯一要添加到comboBox25中的项目是“A216/DIN”,因为它是合适列表中唯一匹配的项目。使用
    字典