navigatie met forms in c#

Status
Niet open voor verdere reacties.

migthy84

Gebruiker
Lid geworden
13 okt 2009
Berichten
580
Beste helpers

Ik heb een eigenlijk een best moeilijke vraag ,waar mee ik niet echt op ander forums beantwoord word.

het probleem is namelijk zo wanneer je hebt 2 forms frmMain frmPopup.
frmMain heeft 1 button. frmPopup ook 1.

Wanneer op de button wordt gedrukt switch je van form op zicht niet heel erg. Het probleem komt pas als je eerste form disabled of laat hidden. Hoe kan je incode aangeven dat de vorige form geopend geshowd dient te worden zonder een nieuwe instantatie aan te gaan.

Code:
// knop op frmMain
 frmMain.enabled = false;
frmPopup pop = new frmPopup();
pop.show()

// knop op frmPopup
this.close()

Met bovenstaande code blijft frmMain disabled. Ik wil ervoorzorgen dat op het moment dat de popup gesloten word het frmMain weer enable word . Desnoods wil ik frmMain ook hidden en daarna weer showen.

Wat ik echter niet wil is ik is een form opbouwen via this.size = (15,25) en dan elke keer de pagina op nieuw opbouwen. Het idee hier achter is da tik verschilllende windows forms zou kunnen maken in visual studio. en deze op te laten roepen sluiten etc.

Het aanpassen van input boxen en messegaboxen heeft in principe geen zin omdat er binenn de forms ook verschillende objecten zoals bijvoorbel opendialog , treeview, etc (verschillende controllers).

Weet iemand hier een concreet antwoord op.
 
oplossing 1:

Code:
frmPopup pop = new frmPopup();
pop.showdialog

dit lost een deel van het probleem op. Je kan namelijk niet niet meer blijven drukken op het vorige forum.

Misschien ga ik de vraag anders stellen.

Is er een mogelijkheid om controle te krijgen over een form die of disabled of verborgen(hide) is doormiddel van een ander form.

om het voorbeeld maar te behouden met frmpop als je daar op staat is frmMain disabled wanneer je frmPop sluit dient frmMain te enable word.
 
stellen.

Is er een mogelijkheid om controle te krijgen over een form die of disabled of verborgen(hide) is doormiddel van een ander form.

je kunt natturlijk altijd frmMain meegeven als parameter. Dan kun je hem wel weer aanroepen.
vb (pseudo code)
je maakt in frmPop een nieuwe contructor met als parameter een form en die sla je op

Code:
 private Form send;
 public frmPop(Form send)
        {
            InitializeComponent();
            this.send = send;
        }

Het drukken op de knop in frmMain (new frmPopup(this) hier geef je dus frmMain mee als parametr)
Code:
frmMain.Visible= false;
frmPopup pop = new frmPopup(this);
pop.show()

en het drukken op de knop in frmPop wordt
Code:
            send.Visible = true;
            this.Close();
 
Laatst bewerkt:
super bedankt. Heb hier zelf nooit over nagedacht. Vooral om ik het onderwerpen van schermen ik het in het geheel 1 form heb gebruik en via omwegen het design onthoudt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan