[ bigtime @ 17.08.2005. 09:35 ] @
Hteo bih da napravim aplikaciju koja ce ucitavati imena iz baze i kada u boxu ukucam slovo da mi u indexu izlaze imena na to slovo. Zanima me da li da koristim listview ili datagrid i koja naredba bi mi trebala da bih napravio taj index search. Unapred hvala.

[Ovu poruku je menjao bigtime dana 17.08.2005. u 10:50 GMT+1]
[ spartak @ 17.08.2005. 09:49 ] @
Unapred hvala na cemu?

To jest nisam razumeo sta je pitanje Vlado.

Ne znas nesto od toga, nista od toga?
[ bigtime @ 17.08.2005. 09:55 ] @
@Spartak, sorry, taman sam menjao poruku koja i nije bila bas najjasnija kada si me pitao. Imena koje ucitavam su iz Excel tabele i samo hocu da napravim aplikaciju koja ce da ucita ta imena iz baze u aplikaciju i da kada ukucam prvo slovo u box da mi izadju imena koja pocinju na to slovo...
[ erkan @ 17.08.2005. 10:09 ] @
E ovako, ja sam to vec radio, s tim sto sam za taj 'box' koji napominjes koristio
ComboBox, tako kad ukucam prvo slovo (ovdje se radilo o artiklima) onda je
u combo box upisao sve one koji pocinju sa tim slovom a u sami text property
od ComboBoxa je bio prvi string iz niza (koji su dobijeni kao rezultat).
Tako je ostatak teksta bio selektovan a moze se i dalje unositi tekst itd...itd
Nije tesko, moras paziti na evente, evo ti dio koda, koji sam ja pisao za svoj projekat,
malo cu ga izmjenit a ako ne bude jasno, javi:

Code:


        private void ProvideByArticleName()
        {
            if(cbNazivArtikla.Text == "") return;    //---- ako je prazan naziv ne radi nista

            // dobavi sve artikle ciji naziv pocinje tekstom koji je ukucan
            string filter = "Naziv LIKE '"+cbNazivArtikla.Text+"%'";
            // rezultat pretrage smjesti u niz 
            DataRow [] rows = dsMain.Tables[0].Select(filter);
            // ako takvog artikla nema...
            if(rows.Length < 1) 
            {
                artikal.valid = false;
                return;
            }
            // Ukini dogadjaj reagovanja na unos teksta i pritisak tastera  jer se dalje u proceduri 
            // mjenja tekst ComboBoxa tako da ne dodje do rekurzivnog pozivanja ove fje
            this.cbNazivArtikla.KeyDown -=  new System.Windows.Forms.KeyEventHandler(this.OnKeyDown);                
            this.cbNazivArtikla.TextChanged -=  new System.EventHandler(this.OnTextChange);
            
            // uzmi prvi naziv od rezultata (ako ih ima vise)
            DataRow currentRow = rows[0];
            string oldText = cbNazivArtikla.Text;
            artikal.naziv = currentRow["Naziv"].ToString();
            //----- Selektuj ostatak naziva artikla            
            cbNazivArtikla.Text = artikal.naziv;
            cbNazivArtikla.Select(oldText.Length, cbNazivArtikla.Text.Length - oldText.Length);    
            
        
            // .... ovdje je dio koda obrade dobavljenih podataka
                   // ---
                       /// ---
            
            // Dodaj dogadjaj reagovanja na unos teksta i pritisak tastera 
            this.cbNazivArtikla.KeyDown +=  new System.Windows.Forms.KeyEventHandler(this.OnKeyDown);                
            this.cbNazivArtikla.TextChanged +=  new System.EventHandler(this.OnTextChange);            
        }



Mozes sve stringove koje si dobio kao rezultat (u rows-u) dodati u comobBox i na taj
nacin dodati event na ComboBox da ti se dropuje comboBox pritiskom na taster donje strelice itd.
I taj dio koda imam pa ako ti bude trebao, javi.
E umalo da zaboravim, ja sam ovdje koristio dataSet ali isto mozes i sa tabelom u bazi, u stvari i ovaj dataSet je 'napunjen' tabelama iz baze

[Ovu poruku je menjao erkan dana 17.08.2005. u 11:11 GMT+1]
[ erkan @ 17.08.2005. 10:12 ] @
hm, tek sam sad vidio da si vec poslao odgovor i da koristis Excel ali ti je
princip isti kao sa bazom

[Ovu poruku je menjao erkan dana 17.08.2005. u 11:12 GMT+1]
[ bigtime @ 17.08.2005. 10:27 ] @
erkan, hvala ti puno!!! Sad znam sta i kako da koristim!!! Tnx