Kezdőoldal » Számítástechnika » Programozás » Elakadtam. C# ennek hogy...

Elakadtam. C# ennek hogy álljak neki?

Figyelt kérdés
van 2 formom és azt szeretném eléri hogy a fő form megvárja amíg leokézom a 2. formot.

2013. aug. 14. 02:36
 1/7 anonim ***** válasza:
kiterjeszted a változok hatáskörét, hogy ne vesszen el az egyik amig a második nincs meg, vagy letárolod addig öket valahová.
2013. aug. 14. 05:40
Hasznos számodra ez a válasz?
 2/7 anonim ***** válasza:

Ezt talán a delegate-el a legegyszerűbb. Egy egyszerű példa:

Form1-be:

public Form1()

{

InitializeComponent();

}


private void button1_Click_1(object sender, EventArgs e)

{

Form2 form2 = new Form2(Callback);

form2.Show();

}


private void Callback(string msg)

{

label1.Text = msg;

}


Form2-be:

public delegate void Del(string msg);

private Del callback;

public Form2(Del del)

{

InitializeComponent();

callback = del;

}


private void button1_Click(object sender, EventArgs e)

{

callback("form2 msg");

}

Amint láthatod létrehoztunk egy delegate-et (ami olyasmi mint egy függvény pointer). Amikor létrehozzuk a Form1-ben a Form2-t átadjuk neki a Callbcak nevű függvényét mint paramétert, majd a Form2-ben egy gomb eseményre egyszerűen meghívjuk azt.


Ez persze elég fapados megoldás, próbálj utánanézni esemény feliratkozásra: Event Subscribe ha komolyabban érdekel a téma.

2013. aug. 14. 08:56
Hasznos számodra ez a válasz?
 3/7 anonim ***** válasza:
Az első formon is lehet addig kattgnitatni, amígy a másikat le nem okézzák? Ha nem, akkor neked modális form kell. A második formot a ShowDialog()-gal hozd elő a Show() helyett.
2013. aug. 14. 10:39
Hasznos számodra ez a válasz?
 4/7 anonim ***** válasza:
Nem igazan erteni, hogy mit szeretnel pontosan, ("megvarja"?), de ha arra gondolsz, hogy a felhasznalo addig ne dolgozhasson a "foformon", amig a "felbukkanoformot" le nem okezta, akkor modalis formma kell tenned a "felbukkanoformot", ahogy az elozo valaszado is irta.
2013. aug. 14. 11:12
Hasznos számodra ez a válasz?
 5/7 A kérdező kommentje:
Arra gondoltam hogy ha felugrik a 2. form akkor az 1. form álljon meg a működéssel amíg a 2. formot le nem okézzák szóval várjon a 2. form válaszára.
2013. aug. 14. 16:52
 6/7 anonim ***** válasza:
Akkor ajánlom neked #3 által írt megoldást, mert ehhez modálisan érdemes megjeleníteni a második formot.
2013. aug. 14. 17:11
Hasznos számodra ez a válasz?
 7/7 A kérdező kommentje:
Köszönöm a válaszokat:)
2013. aug. 14. 17:14

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!