2016-01-08 11 views
-1

В Visual Studio у меня есть номер ComboBox, где я ввожу пять элементов вручную. (продукты) Также TextBox, где я должен автоматически писать цены.Как равные элементы ComboBox в массиве Элементы

В массиве я сохранить цены на эти продукты и названия:

string [] prodmas = new string[5]; 
prodmas[0] = "თევზი"; 
prodmas[1] = "პური"; 
prodmas[2] = "ყავა"; 
prodmas[3] = "შაქარი"; 
prodmas[4] = "წვენი"; 

double[] fasmas = new double[5]; 
fasmas[0] = 1.2; 
fasmas[1] = 2; 
fasmas[2] = 2.4; 
fasmas[3] = 1.3; 
fasmas[4] = 2.5; 

Как сделать, когда я выбираю пункт 1 в ComboBox, TextBox должен показать пункт 1 цена (1.2); когда я выбираю Элемент3 TextBox должен показать цену пункт 3 (2,4)

private void produqcia_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    ....... 
} 

    FULL CODE 


    string [] prodmas = new string[5]; 
     double[] fasmas = new double[5]; 


     void masivebi() 
     { 
      prodmas[0] = "თევზი"; 
      prodmas[1] = "პური"; 
      prodmas[2] = "ყავა"; 
      prodmas[3] = "შაქარი"; 
      prodmas[4] = "წვენი"; 

      fasmas[0] = 1.2; 
      fasmas[1] = 2; 
      fasmas[2] = 2.4; 
      fasmas[3] = 1.3; 
      fasmas[4] = 2.5; 

     } 




     private void produqcia_SelectedIndexChanged(object sender, EventArgs e) 
     { 

      int index = produqcia.SelectedIndex; 
      fasi.Text = String.Format("The item {0} price {1}", index + 1, fasmas[index].ToString()); 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 

      produqcia.DataSource = prodmas; 
     } 


    } 
+0

Вы можете сделать это с помощью 'IndexOf' или получить' ItemIndex' в combobox 1, который будет 'ItemIndex of 0', также есть масса рабочих примеров в Интернете, чтобы делать то, что вы пытаетесь сделать. – MethodMan

+2

Почему Не могли бы вы просто использовать индекс для их соответствия? – wentimo

+1

Добавьте 'masivebi();' в 'Form1_Load' перед' produqcia.DataSource = prodmas; ' –

ответ

1

В виде конструктора или в другом месте:

comboBox1.DataSource = prodmas; 

событие Выбор:

private void produqcia_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    int index = comboBox1.SelectedIndex; 
    textBox1.Text = String.Format("The item {0} price {1}", index + 1, fasmas[index].ToString()); 
} 

Но это не очень хорошо подход, лучше создайте объект, удерживающий два ваших значения, и привяжите его к combobox. Затем отбросьте выбранный объект на свой объект и получите необходимое значение.

+0

, когда я добавляю это >> comboBox1.DataSource = prodmas; combobox понятен. он удалил элементы. – refreshg

+0

вам нужно указать весь код в своем вопросе –

+0

Я добавляю полный код – refreshg

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