Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

C# dropdown list pitanje

[es] :: .NET :: .NET Desktop razvoj :: C# dropdown list pitanje

[ Pregleda: 2380 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

echelon
Ne radim ništa...a da ti pravo kažem,
nemam ni kad...
Sam svoj majstor; elektronika/PC
CAP

Član broj: 8585
Poruke: 174
*.tel.net.ba.



+2 Profil

icon C# dropdown list pitanje02.10.2011. u 15:50 - pre 152 meseci
pozdrav,

imam jedan problemcic,...dobro, dva. nemogu ih rijesiti.
naime, trebam da napravim kada na jednom dropdownu izaberem neku opciju da se na sljedecem dropdownu moze izabrati samo odredjena opcija, ne bilo koja.
recimo na prvom odaberete TEKUCINA, a na sljedecem da imate samo ponudjeno VODA,SOK itd....
pokusavao sam nesto sa switch case ali nije mi uspjelo....
nadam se da ste me razumjeli?

dugi je da tu neku formu sa podatcima spasim pod nekim odredjenim brojem koji je ukucan kao redosljedni. recimo kao broj racuna koji ja unesem i da
se pod tim brojem spasi taj recimo zapis, pdf dokument ili nesto slicno.


p.s.
pocetnik sam u C#, stoga ako vam se ovo ucine kao neki trivijalni problemi, nemojte da se cudite.

bar neku natuknicu u kojem smjeru da trazim rjesenje.

hvala
 
Odgovor na temu

wex-alpha
Sarajevo

Član broj: 7580
Poruke: 845
*.dynamic.telemach.ba.



+13 Profil

icon Re: C# dropdown list pitanje02.10.2011. u 19:25 - pre 152 meseci
Prvi problem mozes rijesiti na mnogo nacina.

Stavi nacin na koji si ti to pokusao rijesiti, pa mozemo od toga krenuti, vjerujem da bi to bilo najbolje za tebe.
 
Odgovor na temu

Wajda.W
Vladimir Vajda
Zrenjanin

Član broj: 127039
Poruke: 323
*.dynamic.isp.telekom.rs.



+101 Profil

icon Re: C# dropdown list pitanje30.10.2011. u 14:33 - pre 151 meseci
Prvi problem mislim da je najjednostavnije sa 2D nizom. Gde je svaki niz jedan tip iz prvog combobox-a, a elementi u tom nizu da su elementi za drugi combobox. I imas jos jedan jednodimenzioni niz gde se nalaze elementi prvog combobox-a i u kojima imas njihove vrednosti.
TIpa:

1D niz:

string[] niz1 = {"voce", "povrce", "napitci", "jela"};
string[][] niz2 = { { "jabuka", }, {"luk", "kupus", "paradajz", "paprika"}, {"sok", "voda", "vino"}, {"pasulj", "sarma"}};

i kad ti izaberes nesto iz prve liste onda mozes da dodjes do indeksa preko combobox.IndexSelected
Taj indeks upotrebis da postavis dataSource u drugi combobox.
combobox2.DataSource = niz2[combobox1.IndexSelected];

To je ideja, nisam proveravao sintaksu i tako to. Ali trebalo bi da posluzi kao ideja.
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
*.adsl-a-1.sezampro.rs.

Sajt: www.drinacoding.com


+14 Profil

icon Re: C# dropdown list pitanje30.10.2011. u 17:55 - pre 151 meseci
Za problem sa ComboBox-ovima (drop down) predlažem rešenje u kome ćeš za izvore podataka ovih kontrola da koristiš DataTable.
Napravi dve DataTabele sa podacima koji će biti povezani na master-detail način kao SQL tabele koje povezuje relacija i u event handleru SelectionChanged prvog ComboBox-a unesi kod kojim ćeš da filtriraš podatke u drugom ComboBox-u.
Primer ispod ima dosta koda zbog popunjavanja DataTabela ali je najbitnije ukapirati nekoliko redova pred kraj Form1_Load metode kao i jedini red u comboBox1_SelectedIndexChanged metodi.
Ako nešto nije jasno, reci.
Code:

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private DataTable dt1;
        private DataTable dt2;
        private void Form1_Load(object sender, EventArgs e)
        {
            dt1 = new DataTable("dt1");
            dt1.Columns.Add(new DataColumn("Id", Type.GetType("System.Int32")));
            dt1.Columns.Add(new DataColumn("Tip", Type.GetType("System.String")));
            DataRow dRow1 = dt1.NewRow();
            dRow1[0] = 1;
            dRow1[1] = "Voće";
            dt1.Rows.Add(dRow1);
            dRow1 = dt1.NewRow();
            dRow1[0] = 2;
            dRow1[1] = "Povrće";
            dt1.Rows.Add(dRow1);
            dRow1 = dt1.NewRow();
            dRow1[0] = 3;
            dRow1[1] = "Napitci";
            dt1.Rows.Add(dRow1);
            dRow1 = dt1.NewRow();
            dRow1[0] = 4;
            dRow1[1] = "Jela";
            dt1.Rows.Add(dRow1);

            dt2 = new DataTable("dt2");
            dt2.Columns.Add(new DataColumn("Id", Type.GetType("System.Int32")));
            dt2.Columns.Add(new DataColumn("TipId", Type.GetType("System.Int32")));
            dt2.Columns.Add(new DataColumn("Naziv", Type.GetType("System.String")));
            DataRow dRow2 = dt2.NewRow();
            dRow2[0] = 1;
            dRow2[1] = 1;
            dRow2[2] = "Jabuka";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 2;
            dRow2[1] = 2;
            dRow2[2] = "Luk";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 3;
            dRow2[1] = 2;
            dRow2[2] = "Kupus";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 4;
            dRow2[1] = 2;
            dRow2[2] = "Paradaiz";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 5;
            dRow2[1] = 2;
            dRow2[2] = "Paprika";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 6;
            dRow2[1] = 3;
            dRow2[2] = "Sok";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 7;
            dRow2[1] = 3;
            dRow2[2] = "Voda";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 8;
            dRow2[1] = 3;
            dRow2[2] = "Vino";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 9;
            dRow2[1] = 4;
            dRow2[2] = "Pasulj";
            dt2.Rows.Add(dRow2);
            dRow2 = dt2.NewRow();
            dRow2[0] = 10;
            dRow2[1] = 4;
            dRow2[2] = "Sarma";
            dt2.Rows.Add(dRow2);

            comboBox1.DataSource = dt1;
            comboBox1.DisplayMember = "Tip";

            comboBox2.DataSource = dt2.DefaultView;
            comboBox2.DisplayMember = "Naziv";
        }
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            dt2.DefaultView.RowFilter = "TipId = " + dt1.Rows[comboBox1.SelectedIndex].ItemArray[0].ToString();
        }
    }

Drugo pitanje nisam razumeo.
 
Odgovor na temu

achille
Zoran Jezdimirovic
Smederevo

Član broj: 206021
Poruke: 10
*.dynamic.sbb.rs.

Sajt: qvik.rs


Profil

icon Re: C# dropdown list pitanje02.01.2012. u 22:39 - pre 149 meseci
Klasičan primer kod automobila, gde imaš marku automobila i modele...
Moj primer je WPF appl.
WPF code:
Code:

<ComboBox
            x:Uid="comboBoxCarBrand"
            Grid.Row="0" Grid.Column="1"
            Name="comboBoxCarBrand"
            Height="25"
            VerticalAlignment="Bottom" SelectedIndex="0" DropDownClosed="comboBoxCarBrand_DropDownClosed" SelectionChanged="cbCarBrand_SelectionChanged">
            <ComboBoxItem Name="Select">Select from list</ComboBoxItem>
            <ComboBoxItem Name="AC">AC</ComboBoxItem>
            <ComboBoxItem Name="Acura">Acura</ComboBoxItem>
            <ComboBoxItem Name="Aixam">Aixam</ComboBoxItem>
            <ComboBoxItem Name="AlfaRomeo">Alfa Romeo</ComboBoxItem>
            <ComboBoxItem Name="Artega">Artega</ComboBoxItem>
            <ComboBoxItem Name="Asia">Asia</ComboBoxItem>
            <ComboBoxItem Name="AstonMartin">Aston Martin</ComboBoxItem>
            <ComboBoxItem Name="Audi">Audi</ComboBoxItem>
           .............
            <ComboBoxItem Name="Corvette">Corvette</ComboBoxItem>
            <ComboBoxItem Name="DAF">DAF</ComboBoxItem>
            <ComboBoxItem Name="DRMotor">DR Motor</ComboBoxItem>
            <ComboBoxItem Name="Dacia">Dacia</ComboBoxItem>
            <ComboBoxItem Name="Daewoo">Daewoo</ComboBoxItem>
            <ComboBoxItem Name="Daihatsu">Daihatsu</ComboBoxItem>
            <ComboBoxItem Name="DeLorean">De Lorean</ComboBoxItem>
            <ComboBoxItem Name="DeTomaso">De Tomaso</ComboBoxItem>
            <ComboBoxItem Name="Dodge">Dodge</ComboBoxItem>
            <ComboBoxItem Name="Donkervoort">Donkervoort</ComboBoxItem>
            <ComboBoxItem Name="Ferrari">Ferrari</ComboBoxItem>
            <ComboBoxItem Name="Fiat">Fiat</ComboBoxItem>
..................
</ComboBox>

Code:

List<string> ACTypeList = new List<string> ()
            {
                "Axiom", 
                "Neki", 
                "JosNeki"
            };
        private void comboBoxCarBrand_DropDownClosed(object sender, EventArgs e)
        {
            // vrednost dropDownBox-a postavljaš u promenljivu
            var vrednostBox = comboBoxCarBrand.Text;
            // ako je ta promenljiva AC, BMW, Audi,... onda su vrednosti CarType ili ti tip auta u listu koju su napravio
            // može i switch, ovo je samo primer sa if
            if (vrednostBox == "AC")
            {
                comboBoxCarType.ItemsSource = ACTypeList;             
            }
        }

Ćuvaj se mnogih ako se ne bojiš pojedinaca.
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: C# dropdown list pitanje

[ Pregleda: 2380 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.