public void Speicher(fStart.StundenAufbau Stundenaufbau, string Schule) { SAStundenAufbau = Stundenaufbau; Label[] lStunde = new Label[SAStundenAufbau.Stunden.Count()]; //Die Stundenzeitenlabels werden erzeugt for (int i = 0; i < SAStundenAufbau.Stunden.Count(); i++) { lStunde[i] = new Label(); lStunde[i].Location = new Point(12, 34 + i * 41); lStunde[i].AutoSize = false; lStunde[i].Size = new Size(72, 42); lStunde[i].Text = i + 1 + ". Stunde\n" + SAStundenAufbau.Stunden[i].Anfangszeit + " - " + SAStundenAufbau.Stunden[i].Endzeit; lStunde[i].BorderStyle = BorderStyle.FixedSingle; lStunde[i].Name = "lStunde" + i; pStundenplan.Controls.Add(lStunde[i]); } //Die Tagesnamen (Montag, Dienstag, etc) werden geladen FileStream fs = new FileStream(@"C:\Users\Julian\Documents\Programme\Stundenplanersteller\Tagesnamen.txt", FileMode.Open); StreamReader sr = new StreamReader(fs); string[] Namen = sr.ReadToEnd().Split('`'); fs.Dispose(); fs.Close(); sr.Dispose(); sr.Close(); List<string> Tagesnamen = new List<string>(Namen); if (!SAStundenAufbau.SonntagsUnterricht) Tagesnamen.RemoveAt(6); if (!SAStundenAufbau.SamstagsUnterricht) Tagesnamen.RemoveAt(5); if (SAStundenAufbau.SonntagAmAnfangDerWoche) { List<string> TagesnamenZwischenspeicher = new List<string>(); TagesnamenZwischenspeicher.Add(Namen[6]); TagesnamenZwischenspeicher.AddRange(Tagesnamen); TagesnamenZwischenspeicher.RemoveAt(TagesnamenZwischenspeicher.Count() - 1); Tagesnamen = TagesnamenZwischenspeicher; } Label[] lTag = new Label[Tagesnamen.Count()]; //Tageslabel werden erstellt for (int i = 0; i < Tagesnamen.Count(); i++) { lTag[i] = new Label(); lTag[i].Location = new Point(83 + i * 120, 3); lTag[i].AutoSize = false; lTag[i].Size = new Size(121, 32);//72, 28); lTag[i].Text = Tagesnamen[i]; lTag[i].BorderStyle = BorderStyle.FixedSingle; lTag[i].Name = "lTag" + i; pStundenplan.Controls.Add(lTag[i]); } AnzTage = Tagesnamen.Count(); //if (Schule != "") //Überpüfen ob eine bestimme Schule geladen wurde //{ // FileStream fist = new FileStream(Schule, FileMode.Open); // StreamReader stre = new StreamReader(fist); // string[] Datei = stre.ReadToEnd().Split(','); //Fächer, Räume, Lehrer // fist.Dispose(); // fist.Close(); // stre.Dispose(); // stre.Close(); // string[] Fach = Datei[0].Split(':'); // foreach (String s in Fach) // { // string[] aFach = s.Split('#'); //Fach#Standardlehrer#Standardraum#Standardfarbe // Stundenplan fl = new Stundenplan(); // cbFach.Items.Add(aFach[0]); //Hinzufügen der Fächer in der Auswahlliste, wenn man eine Stunde bearbeiten möchte // fl.Fach = aFach[0]; // fl.Lehrer = aFach[1]; // fl.Raum = aFach[2]; // fl.Farbe = Color.FromName(aFach[3]); // lspStundenPlan.Add(fl); // } // string[] Raum = Datei[1].Split(':'); // foreach (String s in Raum) // { // lsRaeume.Add(s); // cbRaum.Items.Add(s); //Hinzufügen der Räume in der Auswahlliste, wenn man eine Stunde bearbeiten möchte // } // string[] Lehrer = Datei[2].Split(':'); //Lehrer#Fach#Fach#Fach:Lehrer#Fach#Fach... // foreach (String s in Lehrer) // { // string[] DerLehrer = s.Split('#'); // //cbLehrer.Items.Add(DerLehrer[0]); // LehrerFaecher lf = new LehrerFaecher(); // lf.Name = DerLehrer[0]; // for (int i = 1; i < DerLehrer.Count(); i++) // lf.Faecher.Add(DerLehrer[i]); // } //} }
private void öffnenToolStripMenuItem_Click(object sender, EventArgs e) { try { OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "XML Datein (*.xml)|*.xml|Alle Datein (*.*)|(*.*)"; if (DialogResult.OK == ofd.ShowDialog()) { XmlSerializer ser = new XmlSerializer(typeof(Speicherdatei)); StreamReader sr = new StreamReader(@ofd.FileName); Speicherdatei SD = (Speicherdatei)ser.Deserialize(sr); pStundenplan.Controls.Clear(); AnzTage = SD.AnzTage; dFaecher.Clear(); for (int i = 0; i < SD.sdFaecher.Count(); i++) dFaecher.Add(SD.sdFaecher[i], SD.fdFaecher[i]); dStundenplan.Clear(); for (int i = 0; i < SD.pdStundenplan.Count(); i++) dStundenplan.Add(SD.pdStundenplan[i], SD.fdStundenplan[i]); lsRaeume = SD.lsRaeume; SAStundenAufbau = SD.Stundenaufbau; llfLehrerFaecher = SD.lLehrerFaecher; Speicher(SD.Stundenaufbau, ""); foreach (KeyValuePair<Point, Fach> KVP in dStundenplan) { StundeBearbeitung = 1; pMomStuInBea = KVP.Key; cbFach.Text = KVP.Value.Fachname; cbRaum.Text = KVP.Value.Raum; cbLehrer.Text = KVP.Value.Lehrer; fStundenplanersteller_DoubleClick(null, null); } } } catch { MessageBox.Show("Stundenplan konnte nicht geladen werden!"); } }