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

C#.NET - Pozivanje public void sa forme iz UserControl

[es] :: .NET :: C#.NET - Pozivanje public void sa forme iz UserControl

[ Pregleda: 986 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Hond
VHS
Lüneburg

Član broj: 340865
Poruke: 4
212.68.82.*



Profil

icon C#.NET - Pozivanje public void sa forme iz UserControl04.09.2019. u 13:20 - pre 55 meseci
Pozdrav, novi sam ovdje .

MOzeli mi neko objasniti da li je potrebno pisati delegate ili se moze sa get i set
pozvati public void iz usercontrol koji je prikazan u panel na formi .

hvala


ovo je kod na onload forme koji otvara usercontrol u panel-u

Na formi :
Code:

 UserControl CtrlAns = new cntAnsp();
pnlShowControl.Controls.Clear();
            pnlShowControl.Controls.Add(CtrlAns);
            CtrlAns.Dock = DockStyle.Fill;
            CtrlAns.Show();


Code:

OnClick button- a :
{
// probao sam ovako ali nece

UserControl CtrlAns = new cntAnsp();

 CtrlAns.Kontrole();
CtrlAns.Refresh();

/// ovo ne radi .
}



NA UserControl

Code:

public void Kontrole();        // ovaj public treba pozvati sa forme
{
txtBlabla.Text = "Prikaz";
txtIzraz.Text = "DA";
// itd...
}
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12846



+4783 Profil

icon Re: C#.NET - Pozivanje public void sa forme iz UserControl07.09.2019. u 22:51 - pre 55 meseci
Postoje dve greske. Sta zapravo tvoj kod radi?
Prvi deo kreira novu instancu tvoje kontrole, dodaje je na panel i podesava.
Drugi deo kreira novu instancu tvoj kontrole i poziva metod Kontrole(). Tu je prva greska jer si kreirao novu instancu (primerak) umesto da koristis onu kreiranu u prvom delu. To je kao da zaposlis radnika i posaljes ga da radi u magacinu a onda posle nekog vremena zaposlis novog i pitas ga kako je bilo u magacinu.
Da bi ti radilo kako treba, potrebno je da pristupis toj kontroli koju si kreirao u prvom delu koda. To mozes ili tako sto je dobijes iz pnlShowControl.Controls(0) ako samo nju imas na tom panelu ili tako sto je smesis u neku promenljivu koju deklarises na nivou forme.

Druga greska je sto ti je promenljiva CtrlAns deklarisana kao UserControl. UserControl nema metod Kontrole. Potrebno je da je deklarises kao cntAnsp. No, u svakom slucaju taj drugi deo koda nije dobar kao sto je objasnjeno u prethodnom pasusu.
 
Odgovor na temu

[es] :: .NET :: C#.NET - Pozivanje public void sa forme iz UserControl

[ Pregleda: 986 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

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