private void panel1_Paint(object sender, PaintEventArgs e) { if (startPaardID >= 1) { int x = this.panel1.Width / 2; int y = this.panel1.Height - 20; Graphics g = e.Graphics; Paard startPaard = fokkerij.Paarden.Find(p => p.Id == startPaardID); List<Paard> paardenTeTekenen = new List<Paard>(); List<Paard> oudersVanPaardenTeTekenen = new List<Paard>(); paardenTeTekenen.Add(startPaard); while (paardenTeTekenen.Count > 0) { foreach (Paard paard in paardenTeTekenen) { StamboomItem stamboomItem = new StamboomItem(new Point(x, y), paard); panel1.Controls.Add(stamboomItem); y += stamboomItem.Height; bool heeftVader = paard.Vader != null; bool heeftMoeder = paard.Moeder != null; if (heeftVader || heeftMoeder) { g.DrawLine(new Pen(Color.Black), x, y, x, y + 20); y += 20; } if (heeftVader) { oudersVanPaardenTeTekenen.Add(paard.Vader); } if (heeftMoeder) { oudersVanPaardenTeTekenen.Add(paard.Moeder); } } paardenTeTekenen.Clear(); paardenTeTekenen = oudersVanPaardenTeTekenen; oudersVanPaardenTeTekenen.Clear(); i++; } } }
private void panel1_Paint(object sender, PaintEventArgs e) { if (startPaardID >= 1) { int x = this.panel1.Width / 2; int y = this.panel1.Height - 20; Graphics g = e.Graphics; Paard startPaard = fokkerij.Paarden.Find(p => p.Id == startPaardID); List <Paard> paardenTeTekenen = new List <Paard>(); List <Paard> oudersVanPaardenTeTekenen = new List <Paard>(); paardenTeTekenen.Add(startPaard); while (paardenTeTekenen.Count > 0) { foreach (Paard paard in paardenTeTekenen) { StamboomItem stamboomItem = new StamboomItem(new Point(x, y), paard); panel1.Controls.Add(stamboomItem); y += stamboomItem.Height; bool heeftVader = paard.Vader != null; bool heeftMoeder = paard.Moeder != null; if (heeftVader || heeftMoeder) { g.DrawLine(new Pen(Color.Black), x, y, x, y + 20); y += 20; } if (heeftVader) { oudersVanPaardenTeTekenen.Add(paard.Vader); } if (heeftMoeder) { oudersVanPaardenTeTekenen.Add(paard.Moeder); } } paardenTeTekenen.Clear(); paardenTeTekenen = oudersVanPaardenTeTekenen; oudersVanPaardenTeTekenen.Clear(); i++; } } }