[Anfänger] Problem mit Klassen

dennislassiter

Erfahrenes Mitglied
Hi,

also, ich bin so ziemlich ein C#-Anfänger. Ich muss in der Arbeit damit die neue Verwaltungssoftware mitprogrammieren. Damit ich da schneller durchblick (weils von c#-pros angefangen wurde) hab ich mal ein testprojekt gemacht.

ich hab eine klasse people mit funktionen um neue menschen zu erstellen, um sie zu zählen und um sie wieder zu löschen. Aber wie kann ich machen, das ich z.B. alle menschen mit foreach erfassen kann.

Forms:
form1

Klassen
people
|-->makeman
|-->count
|-->killman

Structs:
Code:
    public struct hose
    {
        public System.Drawing.Color farbe;
    }
    public struct hemd
    {
        public System.Drawing.Color farbe;
    }
    public struct kleidung
    {
        public hose pants;
        public hemd shirt;
    }
    public struct mann
    {
        public int id;
        public string vorname;
        public string nachname;
        public bool weiblich;
        public kleidung clothes;
        public DateTime geburtstag;
        public decimal geld;
    }

Mein Code von der People-Klasse:

Code:
    public abstract class people
    {
        static int id = 0;
        static int counter = 0;

        public long count()
        {
            return counter;
        }

        public mann makeman(string vorname, string nachname, bool weiblich, System.Drawing.Color hosenfarbe, System.Drawing.Color hemdfarbe)
        {

            id++;
            counter++;
            hose pants = new hose();
            pants.farbe = hosenfarbe;
            hemd shirt = new hemd();
            shirt.farbe = hemdfarbe;
            kleidung clothes = new kleidung();
            clothes.pants = pants;
            clothes.shirt = shirt;
            mann neuermann = new mann();
            neuermann.id = id;
            neuermann.vorname = vorname;
            neuermann.nachname = nachname;
            neuermann.weiblich = geschlecht;
            neuermann.clothes = clothes;
            neuermann.id = id;
            neuermann.geburtstag = System.DateTime.Now;
            neuermann.geld = 5.79M;
            
            return neuermann;
        }

        public void killmann(int id)
        {
            
        }
 
    }

Code / Form1:
Code:
        private void button1_Click(object sender, EventArgs e)
        {
            people menschen = new people();
            
            
            mann mensch = new mann();
            
            mensch = menschen.makeman("Horst", "Köhler", false, Color.Black, button2.BackColor);
            label1.BackColor = mensch.clothes.shirt.farbe;
            label2.BackColor = mensch.clothes.shirt.farbe;
            label3.BackColor = mensch.clothes.pants.farbe;
            label4.BackColor = mensch.clothes.pants.farbe;
            label5.BackColor = mensch.clothes.pants.farbe;
            addmantolv(mensch);
        }

Ich brauch hilfe.. ich bin noch zu blöd ;)

Vielen Dank,

Dennis
 
Welche/s Objekt/Methode ist denn addmantolv ?

Ein foreach kannst du zB über eine ArrayList fahren, da müsstest du alle Personen zu einer ArrayList adden, oder du löst das ganze über deine Person-Klasse, die dann mehr oder weniger wie ein Storage fungiert, was ich persönlich aber nicht so sauber finde.
 
addmantolv fügt die Informationen in eine listview ein.

Kannst du mir das bitte mal genauer erklären? Ich bin so verzweifelt :confused: ;)

Vielen Dank,

Dennis
 
Was willst von mir jetzt hören? Wennst verzweifelt bist, dann einfach mal ArrayList in dein Visual Studio schreiben und F1 drücken.

Eine ArrayList ist ein dynamisches Array und dem kann man Objekte hinzufügen. Und diese Liste kann mit einem foreach durchlaufen. Und sonst kannst immer noch ein Usercontrol verwenden, an welches du eine ArrayList binden kannst. Dann wärs auch noch schöner.
 
Zurück