Auf Strukturen zugreifen?

NewPenKid

Mitglied
Hallo, ich hab ein kleines .net Problemm. Also:
Ich hab ein Hauptformular. Mit einer ListBox, und 2 Buttons (Schließen, Neu)
In diesen Formular hab ich eine Struktur.
public struct TMitarbeiter
{
public string VorName;
public string Beruf;
public string PLZ;
public string NachName;
};
TMitarbeiter[] Ma = new TMitarbeiter[30];
private int iCount;

Wenn ich auf den Button neu klicke komm ich zum Formular Mitarbeiter. Dort sind Fuenf Labels und Fuenf Textboxen (VorName, Beruf, Plz, Nachname). Ein Button für Hinzufügen.
Ich will das wenn ich auf Hinzufügen klick (natürlich vorher was in die txt-Felder eingeben) in meiner Structur dieser neuer Mitarbeiter hinzufgefügt wird. Wie mach ich das. Muss ich meine Struktur mitgeben?
Oder muss ich vom Formular Mitarbeiter aus auf die Struktur greifen? Kann mir bitte jemand helfen.
Bin noch ziemlich neu in der Programmier Branche.

Vielen Dank im Voraus!
 
Hallo.

Das Mitarbeiter-Formular öffnest du am Besten mit der ShowDialog Methode, dem Hinzufügen Button gibst als DialogResult den Wert DialogResult.Ok.

Wenn du das Formular anzeigst, und der Rückgabewert der ShowDialog-Methode DialogResult.Ok ist, weisst du das ein neuer Mitarbeiter hinzugefügt werden soll.

Im Mitarbeiter-Formular erstellst du ausserdem eine Property welche eine neue Instanz dieses Structs zurückliefert.


So sollte das dann in etwa aussehen.
Code:
public struct TMitarbeiter
{
	public string VorName;
	public string Beruf;
	public string PLZ;
	public string NachName;
};

public class Main : Form
{
	[...]
	public void btnAdd_Click(EventArgs ea)
	{
		NeueMitarbeiter nm = new NeueMitarbeiter();
		if (nm.ShowDialog == DialogResult.Ok)
		{
			TMitarbeiter tm = nm.Mitarbeiter;
			// .. irgendwas dmait machen ..
		}
	}
}

public class NeueMitarbeiter : Form
{
	[...]
	public TMitarbeiter Mitarbeiter
	{
		get { return new TMitarbeiter(txtVorname.Text,..); }
	}
}

MfG,
Alex
 
Ich danke dir sehr für deine Hilfe.
Du musst wissen das ich erst seit August mich mit dem Thema Programmieren beschäftige.
Also momentan meckert der Compiler noch und zwar:

Der Typ 'Hauptmenue.TMitarbeiter' hat keine Konstruktoren definiert

bei dieser Zeile:

return new TMitarbeiter(txtName.Text,txtNachName.Text,txtBeruf.Text,txtPlz,Text

Warum Weis leider nicht was das heißen soll.

Für weitere Hilfe bin ich natürlich sehr dankbar.

liebe grüße.
 
Hallo.

cosmochaosmaker, warum 3 Posts dafür?

NewPenKid, du solltest noch einen Konstruktor für dein Struct erstellen, das die gewünschten Parameter fordert, und alle Werte des Structs setzt.

MfG,
Alex
 
Zurück