wybór z combobox i case

Odpowiedz Nowy wątek
2010-01-17 15:09

Rejestracja: 10 lat temu

Ostatnio: 10 lat temu

0

Witam, piszę program w którym korzystam z 2 comboboxów. Problem w tym że nie radzę sobię z najważniejszą rzeczą:
po wlączeniu porgramu aktywny jest pierwszy combobox, w którym wybieram markę samochodu, po wybraniu danej marki, uaktywnia się kolejny combobox pod spodem z wyborem modelu danej marki. Mam 7 marek i do każdej z nich mam po 2 modele. Chciałabym zeby po wybraniu Marki były dostępne tylko i wyłącznie Modele danej marki w tym dolnym comboboxie. Próbuje zrobić to z case ale nie bardzo wiem jak do case przesłać wartość comboboxa Marki, by wiedział które Modele ma wyświetlić.

Proszę o pomoc

Pozostało 580 znaków

2010-01-17 17:28

Rejestracja: 12 lat temu

Ostatnio: 2 miesiące temu

0
zyleta89 napisał(a)

Próbuje zrobić to z case ale nie bardzo wiem jak do case przesłać wartość comboboxa Marki, by wiedział które Modele ma wyświetlić.

Użyj właściwiości ComboBox.SelectedItem.


Pozostało 580 znaków

2010-01-17 18:04

Rejestracja: 10 lat temu

Ostatnio: 10 lat temu

0

można by dokładniejszy opis jak to zrobić?:)

Robie na razie coś takiego, ale tez specjalnie nie dziala:

  string w = ComboMarka.SelectedItem.ToString();

            switch (w)
            {

                case "Audi":
                    {
                        ComboModel.Enabled = true;
                        ComboModel.Items.AddRange
                            (
                            new object[]
                        {
                            "A3",
                            "A6"
                        }
                            );
                        break;
                    }
                case "BMW":
                    {
                        ComboModel.Visible = true;
                        ComboModel.Items.AddRange
                            (
                            new object[]
                        {
                            "Seria 3",
                            "Seria 5"
                        }
                            );
                        break;
                    }
                case "Chevrolet":
                    ComboModel.Visible = true;
                    ComboModel.Items.AddRange
                        (
                        new object[]
                        {
                            "Camaro",
                            "Corvette"
                        }
                        );
                    break;
                case "Ford":
                    ComboModel.Visible = true;
                    ComboModel.Items.AddRange
                        (
                        new object[]
                        {
                            "Mustang",
                            "Escort"
                        }
                        );
                    break;
                case "Honda":
                    ComboModel.Visible = true;
                    ComboModel.Items.AddRange
                        (
                        new object[]
                        {
                            "Civic",
                            "CRX"
                        }
                        );
                    break;
                case "Mitsubishi":
                    ComboModel.Visible = true;
                    ComboModel.Items.AddRange
                        (
                        new object[]
                        {
                            "Eclipse",
                            "Lancer"
                        }
                        );
                    break;
                case "Volkswagen":
                    ComboModel.Visible = true;
                    ComboModel.Items.AddRange
                        (
                        new object[]
                        {
                            "Golf",
                            "Passat"
                        }
                        );
                    break;
                default:
                    break;

            }

        }

Pozostało 580 znaków

2010-01-17 18:25

Rejestracja: 12 lat temu

Ostatnio: 2 miesiące temu

0
zyleta89 napisał(a)

Robie na razie coś takiego, ale tez specjalnie nie dziala:

Tzn. w jakim sensie nie działa? Oczywiście ten kod jest umieszczon w zdarzeniu ComboBox.DropDownClosed?


Pozostało 580 znaków

2010-01-17 19:44

Rejestracja: 10 lat temu

Ostatnio: 10 lat temu

0

Ok, już sobie dalam radę, ale dziekuje za chęć :)

dla potomnych zostawiam mój kod, może komuś się przyda kiedyś :)

void ComboBox1SelectedIndexChanged(object sender, EventArgs e)
      {
         if (comboBox2.Enabled == false)
            comboBox2.Enabled = true;

         switch(comboBox1.Text)
         {
            case "1":
               comboBox2.Items.Clear();
               comboBox2.Items.Add("1.1");
               comboBox2.Items.Add("1.2");
               comboBox2.Items.Add("1.3");
               break;
            case "2":
               comboBox2.Items.Clear();
               comboBox2.Items.Add("2.1");
               comboBox2.Items.Add("2.2");
               comboBox2.Items.Add("2.3");
               break;
            case "3":
               comboBox2.Items.Clear();
               comboBox2.Items.Add("3.1");
               comboBox2.Items.Add("3.2");
               comboBox2.Items.Add("3.3");
               break;
         }
      }

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0