[ djvlajko @ 28.02.2016. 23:42 ] @
Sta je brze - resursno manje zahtevno kada je potrebno pristupiti kontroli za koju se ne zna da li uopste postoji na formi :

For Each ...


Next

ili

FindControl(ImeKontrole)

Pokusavam napraviti inherit formu koja bi u sebi sadrzala dosta generickog koda za pristup DataGridView (koga ne mogu vizuelno naslediti), zatim
razni dugmici, texboksici itd. Bitno mi je da sto manje opteretim sistem kada se ta nasledi u niz konkretnih formi ...

Hvala
[ Shadowed @ 29.02.2016. 08:24 ] @
Nema tu neke narocite razlike. I Find() ce ti jednostavno for petljom proci kroz kolekciju i ako si odabrao da trazi u vise nivoa, rekurzivno pozivati za svaku podkontrolu istu tu pretragu.
[ djvlajko @ 29.02.2016. 10:09 ] @
Do sada sam radio sa For Next, pa cu i produziti.

Hvala ...
[ djvlajko @ 29.02.2016. 13:38 ] @
Zapravo ovakva sintaksa resava problem :

Code:


        Dim Dugme As Button = CType(Me.Controls("btn_1"), Control)

        Dugme.Focus()



Mogu pristupati kontrolama bez kruzenja kroz celu formu ...
[ Shadowed @ 29.02.2016. 14:05 ] @
CotrolsCollection[string key] vec vraca Control instancu, tako da ne moras da radis cast sa CType. Takodje, ako je to sve sto ti treba, posto Focus() metod pripada Control klasi, nije ti potreban button, tako da mozes da uradis samo: Me.Controls("btn_1").Focus().

S druge strane, ako radis na standardni nacin, uz pomoc designer-a, on ti kontrolu dodaje i u promenljivu cije je ime isto kao ime kontrole tako da je u tom slucaju dovoljno btn_1.Focus().
[ djvlajko @ 29.02.2016. 15:33 ] @
Ovo ce mi sigurno biti vrlo korisno u daljem radu, ali u pravljenju moje opste forme ne, jer npr koristim kolekciju Rows koja ne pripada Control klasi.
Sa Ctype ovo prolazi ...

Svakako, mnogo hvala na vaznim informacijama.

Srdacan pozdrav