Archief - Visual Studio.net

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

White Label

Legacy Member
Ik ben op zoek hoe je een bepaald formulier kan openen bij het drukken op een knop. Iedereen zegt wel dat het hetzelfde principe is als bij visual basic maar do cmd.OpenForm werkt dus niet en ik heb zelf al wat zitten spelen met de code maar het lukt gewoon niet. De helpfunctie bij .net is ook al niet te best dus kan er iemand mij helpen?

Exit

Legacy Member
welk prog?? visual studio is verzamelnaam van meerder programeer talen als ik me nie vergis (vb, c++, fox, ...)

[IpL]Viper_666

Legacy Member
In welke .NET programmeertaal ben je bezig?
VB.NET of C#?
Wat bedoel bedoel je juist met een formulier openen?

Als je bedoelt een bepaalde windows form aanmaken en tonen,
wanneer je op een knop drukt, moet je in het onClick event van
de knop code plaatsen om een instantie van het form object aan
te maken en dan daarop de .Show() methode van aanroepen.

Voor een degelijke help voor programmeertalen bij VS.NET
moet je de MSDN library geinstalleerd hebben of op de MSDN
website gaan zoeken. Ik denk zelfs dat je VS kan instellen om
meteen via de website te zoeken ook ipv van locaale install.

White Label

Legacy Member
Ja ik heb dus een event OnClick bij de knop op formulier1 en dan heb ik dus een ander formulier met daarin tekstvakken (formulier 2). Bij het klikken op de knop moet formulier2 openen en moeten de berekeningen (die gemaakt zijn in formulier1) in de tekstvakken komen.
Ik heb MSDN library geinstalleerd maar ik krijg 2000 mogelijkheden bij het zoeken... Niet echt straight 2 the point.

Bubbling Zombie

Legacy Member
White Label zei:
Ja ik heb dus een event OnClick bij de knop op formulier1 en dan heb ik dus een ander formulier met daarin tekstvakken (formulier 2). Bij het klikken op de knop moet formulier2 openen en moeten de berekeningen (die gemaakt zijn in formulier1) in de tekstvakken komen.
Ik heb MSDN library geinstalleerd maar ik krijg 2000 mogelijkheden bij het zoeken... Niet echt straight 2 the point.


(eventhandler voor die knop, gemakkelijk aan te maken maar kan het wel nie van buiten)
dim form2 as new frmForm2
//code om uw form2 in te vullen en door te geven, hoe da ga, don't ask me :p
form2.show()

end sub

[IpL]Viper_666

Legacy Member
Data van de ene form naar de andere te sturen kan je door
in de constuctor van die form je data als parameter meegeven.
een methode maken in die form om die data binnen te krijgen
met een parameter (of meerdere) en dan te verwerken.

Hangt af wat voor data je moet gaan doorgeven.
Een paar texteboxen kan je bvb met 2 strings door te geven.
Als je er meer hebt kan je dat dmv een array of zelfs een
DataSet (dan kan je met dynamic binding werken)

Je zegt dat form2.Show() niet werkt, maar is form2 wel een
instantie van een form object?

.:KrusT:.

Legacy Member
In VB.Net is alles een klasse. Maak eerst je form aan.

Zet dan in het click_event van de knop

Dim FormVB as new form
FormVB = (de naam van uw aangemaakt form)
FormVB.show()

Dacht ik toch...

[IpL]Viper_666

Legacy Member
Dim FormVB as new form
FormVB = (de naam van uw aangemaakt form)
FormVB.show()

Waarom in godsnaam een instantie van uw form aanmaken
dmv New in die FormVB variabele alst toch is om daar dan
achteraf weer een ander bestaand form object in te steken.

in C# doe kik da zo:
Code:
Form aboutDialog = new About(); //About is de klassenaam van de form
aboutDialog.Show();
    of
aboutDialog.ShowDialog(this);
zijn ma 2 lijnen code in VB moet da toch ook kunnen zeker.

st3ph3n

Legacy Member
@ .:KrusT:.

VB.NET werkt met objecten die instanties zijn van klassen. De methode show is bovendien niet statisch, en dus kan je het enkel via een object gebruiken.

Deze code werkt perfect;
Code:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim f2 As New Form
        f2.Show()
    End Sub

Steven

=(uFo)=PimpMan

Legacy Member
Ik wil geen flamewar maar ik zou toch es C# overwegen :p Das stukker overzichtelijker en logischer in bepaalde opzichten

[IpL]Viper_666

Legacy Member
=(uFo)=PimpMan zei:
Ik wil geen flamewar maar ik zou toch es C# overwegen :p Das stukker overzichtelijker en logischer in bepaalde opzichten
Ah ge weet het :p

Derbij C# is DE .NET taal en VB.NET ondersteunt een aantal aspecten
binnen het .NET framework niet...
(tis nogal advanced en ge merkt da ni tot ge het vandoen hebt)

Als ge vroeger enkel al VB hebt gedaan dan springde makkelijk in VB.NET.
Als ge vroeger enkel talen a-la C++/JAVA hebt gedaan dan ligt C# beter.
En als ge een beke logisch in elkaar zit en get nog nooit een regel code
geschreven, kies je logischerwijze voor C#. Kvind VB.NET een 'foefel-taal'.

En idd goede uitgeleg van Stephen, kzou moest ik van u zijn eens de
basis OO princiepes bekijken anders gade ni heel ver geraken in .NET...

White Label

Legacy Member
tja het weigert te doen wat je voorstelt... Zijn er nog andere foefelmethodes om een form te openen?
En ik moet wel met VB.net werken want het is voor school.

st3ph3n

Legacy Member
Heb je mijn VB.NET-codevoorbeeld letterlijk overgenomen (enkel om te testen) ?

Uw tweede form staat toch niet Invisible ?

Steven
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan