Laden...

Parameter an Form übergeben

17 Antworten
3,975 Aufrufe
Letzter Beitrag: vor 18 Jahren
Parameter an Form übergeben

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

"Life is a journey, travel it well!"

Hallo xforfun,

im Konstruktor der Form-Klasse.

herbivore

der ist doch folgendes, oder?


        public fktOpt()
        {
            InitializeComponent();
        }

bekomm da nämlich eine Fehlermeldung.

mfg
xforfun

"Life is a journey, travel it well!"

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.

Gernot Melichar

Original von xforfun
bekomm da nämlich eine Fehlermeldung.

Die man vielleicht auch mit nennen sollte.

hi xforfun

ich habe es hiermit gelöst.

http://www.tutorials.de/tutorials185977.html

greetz

Torkel

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

"Life is a journey, travel it well!"

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

"Life is a journey, travel it well!"

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

"Life is a journey, travel it well!"

hab´s thx 😉
schönen abend noch...

mfg
xforfun

"Life is a journey, travel it well!"

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

1. Googlen 2. Boardsuche benutzen 3. Überlegen 4. Posten

Ich sage es nur äußerst ungerne,aber darf man in Foren/wo auch immer eine klitzekleine Frage stellen,ohne dass gleich ein Oberlehrer mit der obligatorischen "Google suchen"-Antwort kommt?

genauso etwas wie hier: http://www.tutorials.de/tutorials185977.html
suche ich, nur das die beiden Versionen zusammen in einer funktionieren müssten.