2013-11-15 1 views
0

Мое решение имеет модуль (или форму), который содержит 2 comboboxes (первые comboboxes относятся к типу пищи, а во-вторых, может быть, если я выбираю, например, алкогольные напитки или фрукты).Как я могу заменить элементы из combobox, когда я меняю тип продуктов питания

Случается, что при каждом выборе, мое программное обеспечение это сделать: eat.AddTypesToComboBox1(this.comboBox1);

Но, если я выбрать алкогольные напитки, а затем выбрать фрукты, выпадающий показать мне что-то подобное, как это:

красного вина Blank вина Виски (...) Яблоко груша маракуйи

Итак, как, когда я выбрать фрукты, например, я могу заменить или очистить список O f алкогольные напитки.

-> Чтобы лучше понять мой алгоритм, я также вставляю код (form5) и употребляю (класс).

form5

private void comboBox2_SelectedIndexChanged(object sender, EventArgs e) 
     { 

      if (comboBox2.SelectedItem.ToString() == "Bebidas não alcoólicas") 
      { 

       eat.AddTypesToComboBox1(this.comboBox1); 
       //Convert.ToString(this.comboBox1); 
      } 


      if (comboBox2.SelectedItem.ToString() == "Bebidas Alcóolicas") 
      { 

       //eat.DelToComboBox1_BNA(this.comboBox1); 
       eat.AddTypesToComboBox1_BA(this.comboBox1); 
      } 


      if (comboBox2.SelectedItem.ToString() == "Fruta") 
      { 

       eat.AddTypesToComboBox1_FR(this.comboBox1); 
      } 




     } 

Класс (eat.cs)

фрукты и алкогольные напитки, организованные массивы

public void setfood_balc() 
     { 
      name1[0] = "Vinho Tinto"; 
      name1[1] = "Vinho Branco"; 
      name1[2] = "Vinho Verde"; 
      name1[3] = "Vinho rosé"; 
      name1[4] = "Cerveja"; 
      name1[5] = "Cerveja preta"; 

     } 
     public void setfood_fruit() 
     { 
      name2[0] = "Maça"; 
      name2[1] = "Marmelo"; 
      name2[2] = "Nêspera europeia"; 
      name2[3] = "Nêspera"; 
      name2[4] = "Pêra"; 

     } 

-> Код, который позволяет мне добавлять элементы в ComboBoxes

public void AddTypesToComboBox1(ComboBox box1) 
     { 
      for (int k = 0; k < name.Length; k++) 
      { 
       box1.Items.Add(name[k]); 
      } 

     } 
+2

Как насчет очистки выпадающего списка перед добавлением новых элементов? – elgonzo

ответ

0

Вы можете очистить ComboBox товары, прежде чем добавлять новые, как показано ниже

public void AddTypesToComboBox1(ComboBox box1) 
      { 
       box1.Items.Clear(); //Cleares all Items before dding new ones 
       for (int k = 0; k < name.Length; k++) 
       { 
        box1.Items.Add(name[k]); 
       } 

      } 

, если вы ищете что-то еще, пожалуйста, дайте мне знать.

+0

Этот код выводит, но поле со списком пусто или пусто, когда я выбираю новый элемент –

+0

Возможно ли это решить? –

+0

Конечно, почему бы и нет. если вы ищете что-то другое (кроме моего ответа), пожалуйста, дайте мне знать. –

Смежные вопросы