Hi,
wie kann ich einem Formular beim öffnen einen Parameter übergeben?
Form frm1 = new Form();
frm1.Show();
Mein Gedanke war:
Form frm1 = new Form(Parameter);
frm1.Show();
Aber wo muss ich den Parmeter dann "entgegennehmen" im Formular?
mfg
xforfun
Hallo xforfun,
im Konstruktor der Form-Klasse.
herbivore
der ist doch folgendes, oder?
public fktOpt()
{
InitializeComponent();
}
bekomm da nämlich eine Fehlermeldung.
mfg
xforfun
möchtest du vielleicht das hier:
public class MyForm : Form
{
//Konstruktor ohne parameter
public MyForm() : this("default")
{
// das ': this("")' ruft den anderen konstruktor mit einem default wert auf
// du kannst diesen Konstruktor auch weglassen
}
//Konstruktor mit parameter
public MyForm(string myParameter)
{
this.InitializeComponent();
}
}
Hi
also du machst pro form ja eine klasse, sprich eine datei.
einmal deine mainform
und deine form, an die die parameter übergben willst.
die parameterform sieht dann ungefähr so aus
class MeineForm
{
private string parameterKopie;
public MeineForm(string parameter) //KOnstruktur
{
parameterKopie=parameter;
}
}
von deiner hauptform, übergibst du den parameter im konstruktor:
MeineForm meineForm1 = new MeineForm("STRING-TANGA");
meineForm1.Show();
feddich
(8(|)
Vergiss nicht etwaige GUI-Updates erst nach InitializeComponent(); durchzuführen.
Original von xforfun
bekomm da nämlich eine Fehlermeldung.
Die man vielleicht auch mit nennen sollte.
hi,
okay letztere Variante gefällt mir gut 🙂
Habe noch folgende Fehlermeldung, wobei ich die schon die ganze Zeit habe:
Inconsistent accessibility: property type 'Graph.GraphOpt' is less accessible than property 'Graph.fktOpt.choosedGraph'
Ich habe eine Klasse, die ein paar Methoden und Objekte hat.
Die wird in meiner Main-Klasse also Objekt instanziiert und ich möchte dieses Objekt eigentlich die ganze Zeit in meiner Anwendung mit den enhaltenen Werten verwenden. Ich möchte also kein neues Objekt von der Klasse erstellen. Wenn ich diese Klasse nun als public irgendwo deklariere, bekomme ich die oben genannte Fehlermeldung so oder so ähnlich.
Wie kann ich das ändern?
mfg
xforfun
Hallo xforfun,
Schlag die Fehlermeldung einfach in der SDK-Doku nach. Auch und gerade als Anfänger muss man lernen, Syntax-Fehler selbst zu beheben. (Mal abgesehen davon, dass die Fehlermeldung selbst schon genau das Problem beschreibt.)
herbivore
Das ist mir schon klar. Ich weiß nur nicht, wo ich nach dem Problem suchen soll, bzw. wie ich die Meldung verstehen soll. Klar, ich bin Anfänger, dass ist mir klar und ich weiß auch, dass ich die Fehler selber suchen soll. Nur wenn ich sie nicht finde, frag ich hier halt nach.
mfg
xforfun
Hallo xforfun,
Ich weiß nur nicht, wo ich nach dem Problem suchen soll
deswegen habe ich ja geschrieben, wo du suchen kannst. Man einfachsten ist, die Fehlernummer (CS...) über den Index der SDK-Doku zu suchen.
herbivore
Ja, soweit war ich auch schon... komme nur trotzdem nicht weiter...
mfg
xforfun
hab´s thx 😉
schönen abend noch...
mfg
xforfun
Danke herbivore für den Link,
ich hatte heute den gleichen Fehler in meinem Code.
Und durch Boradsuche bin ich hier gelandet.
Und siehe da, ich habe auch mein Problem gelöst.
Danke 😁 😁 😁 😁 😁 😁 😁 😁
steel
genauso etwas wie hier: http://www.tutorials.de/tutorials185977.html
suche ich, nur das die beiden Versionen zusammen in einer funktionieren müssten.