Variable an Label übergeben

Fridulin

Erfahrenes Mitglied
Hi,

Ich komme einfach nicht drauf wie ich es schaffe eine Variable von einer anderen void funktion zurück ins Label übergeben kann.
Kann mir da einer Helfen?
Ich muß ja irgendwie das wieder zurück übergeben die Variable, aber ich habe dennoch keine Ahnung wie ich das hinbekommen kann.

danke

Grüße
 
Zuletzt bearbeitet:
Hallo Fridulin!

Muss denn deine Methode unbedingt "void" sein? Sonst könntest du ein Ereignis erstellen, und die Variable damit übergeben....
 
Hi,

Nein das muß sie nicht...kannst du mir vielleicht ein Beispiel zeigen wie ich dies machen kann?

Grüße
 
"void" sagt nur aus, dass die Methode keinen Rückgabewert hat! Du kannst statt "void" den Datentyp des zurückzugebenden Wertes angeben.

zum Beispiel einen bool - Wert zurückgeben:
Code:
private bool Test()
{
	 bool rWert = true;
 
	 return rWert;
}
 
Hi!

Danke für deine Antwort.
Es war leider mein Fehler, ich habe es nicht mit bool sondern mit private string starten() gemacht, allerdings ist es nicht die nächst höhrere Funktion. Es ist so aufgebaut:
Code:
private void InitializeComponent()  < da ist ja auch das Label drinne
dann
Code:
void form_start(object sender, System.EventArgs e)
und dann
Code:
private string starten()
und die string var soll wieder zurück nach InitializeComponent.

Kann man das noch irgendwie anders lösen?

Grüße und nochmals danke!
 
Zuletzt bearbeitet:
private void InitializeComponent()
Was willst du denn damit? Das ist eine System Methode, um alle deklarierten Controls zu initialisieren, die würde ich eigentlich nicht ändern...

Genau genommen verstehe ich dein Problem (nicht mehr) ganz. Ich habe dir aber ein Beispiel mit Rückgabewert gemacht, vielleicht hilft es dir.

Beispiel:
Code:
private void label1_Click(object sender, System.EventArgs e)
{
	string a = label1.Text;

	bool b = Test(a);
	MessageBox.Show(b.ToString());
}

private bool Test(string text)
{
	if (text == "label1")
		return true;
	else
		return false;
}
 
Hallo,

Danke für deine Antwort.
Also das was ich möchte ist, eine Variable in einen Label einfügen. Das ganze geschieht folgendermaßen, ich klicke auf einen Button und gehe von
private void InitializeComponent() nach void form_start(object sender, System.EventArgs e) . Danach springe ich in eine andere private string starten() und von dort soll der inhalt einer string Variable im Label ausgegeben werden. Aber da sich ja der Inhalt des Labels in private void InitializeComponent() befindet muß ich ja irgendwie die String Variable übergeben.Ich hoffe ich konnte dir das jetzt deutlicher erklären

Grüße!
 
Ich denke nicht, dass du einfach eine Variable in ein Label "einfügen" kannst. Alles was du kannst, ist das Label einen bestimmten Text anzeigen lassen; wie das geht siehst du in der letzten Antwort.

Wie kommst du denn darauf, das die Controls irgendwie in der Methode "InitializeComponent()" sein sollen? Das ist ja nur eine Methode und nicht ein Container...
Die Controls sind alle in der ArrayList "Controls" des übergeordneten Controls (meistens das Form oder ein Panel).

Zu deinem Problem: Wenn du die Methode "starten" in "form_start" aufrufst, dann kannst du doch dort (in "starten") dem Label den gewünschten Text zuordnen. Sonst schreib doch mal was du denn überhaupt machen willst (das eigentliche Problem, meine ich)...
 
Hi,

und zwar ich wollte gerne hier die Variable einfügen, oder bin ich jetzt auf den total falschen weg?
Code:
this.label1.Location = new System.Drawing.Point(144, 40);
 
this.label1.Name = "label1";
 
this.label1.TabIndex = 2;
 
this.label1.Text = var; // <<< var = Variable
 
this.label1.Click += new System.EventHandler(this.Label1Click);

So und ich versuche es nochmal zu erklären was ich gerne erreichen will.
Also
Code:
private void InitializeComponent() {
....
....
// 
 
// label1
 
// 
 
this.label1.Location = new System.Drawing.Point(144, 40);
 
this.label1.Name = "label1";
 
this.label1.TabIndex = 2;
 
this.label1.Text = ip;
 
this.label1.Click += new System.EventHandler(this.Label1Click);
...
...
}
//----------
void form_start(object sender, System.EventArgs e) // das ist der Klick auf den Button
 
{
 
starten(); // funktion starten aufrufen
 
}
 
private string starten()
 
{
 
 
 
string var= "test inhalt"; <<< das ist der Inhalt (wird von meinem Programm automatisch gesetzt
...
...
}

Und diesen Inhalt von var also "Test inhalt" möchte ich jetzt gerne im Label stehen haben.

Ich hoffe es war jetzt einigermaßen verständlich!


Grüße und nochmal vielen Dank für deine Mühe!

Grüße
 

Neue Beiträge

Zurück