[ Bope @ 02.08.2006. 23:28 ] @
Da li postoji mogucnost da u C# nekoj kontroli iz Form1 dodelim text kontrole iz Form2? (npr u VB-u bih ovako uradio label1.caption=form2.label1.caption) |
[ Bope @ 02.08.2006. 23:28 ] @
[ Mikky @ 02.08.2006. 23:38 ] @
Naravno, bas tako se i radi.
[ Bope @ 03.08.2006. 00:11 ] @
Ja nisam uspeo tako.Sve u svemu resio sam taj problem tako sto sam napravio klasu sa javnom promenljivom koja dobije kao vrednost text label2 pa sam onda iz form1 koristio public promenljivu iz te klase....
U poslednjih par dana sam poceo da se bavim C++.net i C#-om.Zanima me vase misljenje: da li se vise isplati uciti C# ili C++? Koji jezik je mocniji? Koji ima bolju perspektivu? Meni se C++ cini kao mnogo mocniji (valjda zbog svoje komplikovanosti) ali me zanima sta vi mislite... [ spartak @ 03.08.2006. 01:36 ] @
Zavisi da li hoces da ulovis puno fazana ili jednog slona?
Za skoro SVE biznis aplikacije i web aplikacije na koje sam do sada naisao C# je i vise nego dovoljan. Ako ces da pises drajvere i neke sisteme kod kojih je bitna kontrola memorije i slicno... eto te kod C++. Ako ces kitolovac da budes odmah udri Assembly kakav C++. Mucices se dugo da nesto napravis, ali ce da ti radi brzo :-) [ Bope @ 04.08.2006. 15:17 ] @
sto se tice "label1.text=form2.label1.text" problema otkrio sam "rupu na saksiji"!
Za one koji budu imali slican problem pa nalete na ovu temu: U "form2.designer.cs" kodu treba napisati da je label2 public a ne private! [ spartak @ 04.08.2006. 16:25 ] @
Mogu i da naprave instancu objekta form2 u kodu form1, i da pristupe kolekciji kontrola form2, nadju label i uzmu mu vrednost a da kontrola i dalje ostane private.
[ Bope @ 04.08.2006. 18:11 ] @
Kako to? Kako?
[ Oliver Klaćik @ 05.08.2006. 02:35 ] @
Pogledaj ControlCollection klasu u MSDN-u.
[ radoica @ 06.08.2006. 16:21 ] @
Mozda ovako, nije testirano
Code: foreach (Control c in Form2.Controls) { if (c is Label) { Form1.label1.Text = c.Text; } Ovo gore je ako imas vise kontrola na Form2, ali samo jednu label-u Code: foreach (Control c in Form2.Controls) { if (c.Name == "labelName") { Form1.label1.Text = c.Text; } } Ovde je identifikujes preko imena, ako imas vise label-a na Form2 [ radoica @ 06.08.2006. 16:30 ] @
Upravo sam se setio da ControlCollection ima preklopljen [] operator koji kao parametar prima ime kontrole tako da ti je ovo najbolje resenje
Code: Form1.label1.Text = Form2.Controls["labelName"].Text; [ Bope @ 10.08.2006. 14:57 ] @
A da li bi mogao da mi das kod koji bi resavao ovaj moj problem?
[ radoica @ 10.08.2006. 21:02 ] @
Code: Form1.label1.Text = Form2.Controls["labelName"].Text; Ovo i jeste kod koji bi resio tvoj problem, ako sam ja dobro razumeo! [ Bope @ 10.08.2006. 22:04 ] @
o5 sam dao odgovor na pogresnu temu! (sta mi je danas?!)
Hvala Radoice,ovaj problem sam resio ali se javio novi... Na mojoj temi "Problem oko dodeljivanja vrednosti konrolama iz drugih Form-a" sam objasnio taj drugi problem... Taj drugi problem je vezan za scope label-e [ VerbatimBOT @ 11.08.2006. 08:31 ] @
Citat: Da li postoji mogucnost da u C# nekoj kontroli iz Form1 dodelim text kontrole iz Form2? Kod u formi1 Code: // definises na globalnom nivou klase Form2 frm2 = new Form2(); // ... // ovo smesti u event za koji ti je potreban lblIme.Text = frm2.procitajIme(); Kod u formi2 Code: public string procitajIme() { return txtIme.Text; } Citat: U "form2.designer.cs" kodu treba napisati da je label2 public a ne private! Da ali se to u praksi ne radi. Bolje da ih ostavis na private! Preporucljivo je da im pristupas preko javnih metoda i propertija. Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|