static void SkaitytiGrupes(string failas, Dictionary <string, Grupe <Bakalauras> > bakalauruGrupes, Dictionary <string, Grupe <Magistrantas> > magistrantuGrupes) { using (StreamReader reader = new StreamReader(failas, Encoding.GetEncoding(1257))) { string line; while ((line = reader.ReadLine()) != null) { string[] parts = line.Split(';'); string pozymis = parts[0].Trim(); int kursas = int.Parse(parts[1].Trim()); string grupe = parts[2].Trim(); string specializacija = parts[3].Trim(); string kuratorius = parts[4].Trim(); switch (pozymis) { case "B": Grupe <Bakalauras> bg = new Grupe <Bakalauras>(grupe, kursas, specializacija, kuratorius); bakalauruGrupes.Add(grupe, bg); break; case "M": Grupe <Magistrantas> mg = new Grupe <Magistrantas>(grupe, kursas, specializacija, kuratorius); magistrantuGrupes.Add(grupe, mg); break; } } } }
private void SukurtiGrupesPuslapi <T>(Grupe <T> grupe) where T : Studentas { TabPage puslapis = new TabPage(grupe.Pavadinimas); tabControl1.TabPages.Add(puslapis); FlowLayoutPanel skydelis = new FlowLayoutPanel(); skydelis.Dock = DockStyle.Fill; skydelis.FlowDirection = FlowDirection.TopDown; puslapis.Controls.Add(skydelis); Label kursas = new Label(); kursas.Text = "Kursas: " + grupe.Kursas; kursas.AutoSize = true; skydelis.Controls.Add(kursas); Label specializacija = new Label(); specializacija.Text = "Specializacija: " + grupe.Specializacija; specializacija.AutoSize = true; skydelis.Controls.Add(specializacija); Label kuratorius = new Label(); kuratorius.Text = "Kuratorius: " + grupe.Kuratorius; kuratorius.AutoSize = true; skydelis.Controls.Add(kuratorius); // Kuriame studentų lentelę: DataGridView tinklelis = new DataGridView(); tinklelis.AutoGenerateColumns = false; tinklelis.RowHeadersVisible = false; tinklelis.AllowUserToAddRows = false; tinklelis.AllowUserToDeleteRows = false; tinklelis.AutoSize = true; tinklelis.BackgroundColor = Color.White; BindingSource duomenuModelis = new BindingSource(); foreach (Studentas s in grupe.StudentuSarasas) { duomenuModelis.Add(s); } tinklelis.DataSource = duomenuModelis; DataGridViewColumn column = new DataGridViewTextBoxColumn(); column.DataPropertyName = "PazymejimoNr"; //nurodome Studento objekto sąvybės pavadinimą column.Name = "Paž. nr."; //nurodome stulpelio pavadinimą column.ReadOnly = true; tinklelis.Columns.Add(column); column = new DataGridViewTextBoxColumn(); column.DataPropertyName = "Vardas"; column.Name = "Vardas"; column.ReadOnly = true; tinklelis.Columns.Add(column); column = new DataGridViewTextBoxColumn(); column.DataPropertyName = "Pavarde"; column.Name = "Pavarde"; column.ReadOnly = true; tinklelis.Columns.Add(column); DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn(); combo.DataSource = Enum.GetValues(typeof(Statusas)); combo.DataPropertyName = "Statusas"; combo.Name = "Statusas"; tinklelis.Columns.Add(combo); if (typeof(T) == typeof(Magistrantas)) { column = new DataGridViewTextBoxColumn(); column.DataPropertyName = "Tema"; column.Name = "Darbo tema"; column.ReadOnly = true; column.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells; tinklelis.Columns.Add(column); } skydelis.Controls.Add(tinklelis); // Geriausio studento atvaizdavimas: Label geriausiasTitle = new Label(); geriausiasTitle.Text = "\nGeriausias studentas"; geriausiasTitle.AutoSize = true; skydelis.Controls.Add(geriausiasTitle); DataGridView geriausias = new DataGridView(); geriausias.AutoGenerateColumns = false; geriausias.RowHeadersVisible = false; geriausias.AllowUserToAddRows = false; geriausias.AllowUserToDeleteRows = false; geriausias.AutoSize = true; geriausias.BackgroundColor = Color.White; BindingSource geriausioDuomenuModelis = new BindingSource(); geriausioDuomenuModelis.Add(grupe.GeriausiasStudentas()); geriausias.DataSource = geriausioDuomenuModelis; DataGridViewColumn geriausiasColumn = new DataGridViewTextBoxColumn(); geriausiasColumn.DataPropertyName = "PazymejimoNr"; //nurodome Studento objekto sąvybės pavadinimą geriausiasColumn.Name = "Paž. nr."; //nurodome stulpelio pavadinimą geriausiasColumn.ReadOnly = true; geriausias.Columns.Add(geriausiasColumn); geriausiasColumn = new DataGridViewTextBoxColumn(); geriausiasColumn.DataPropertyName = "Vardas"; geriausiasColumn.Name = "Vardas"; geriausiasColumn.ReadOnly = true; geriausias.Columns.Add(geriausiasColumn); geriausiasColumn = new DataGridViewTextBoxColumn(); geriausiasColumn.DataPropertyName = "Pavarde"; geriausiasColumn.Name = "Pavarde"; geriausiasColumn.ReadOnly = true; geriausias.Columns.Add(geriausiasColumn); DataGridViewComboBoxColumn geriausiasCombo = new DataGridViewComboBoxColumn(); geriausiasCombo.DataSource = Enum.GetValues(typeof(Statusas)); geriausiasCombo.DataPropertyName = "Statusas"; geriausiasCombo.Name = "Statusas"; geriausias.Columns.Add(geriausiasCombo); if (typeof(T) == typeof(Magistrantas)) { geriausiasColumn = new DataGridViewTextBoxColumn(); geriausiasColumn.DataPropertyName = "Tema"; geriausiasColumn.Name = "Darbo tema"; geriausiasColumn.ReadOnly = true; geriausiasColumn.AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells; geriausias.Columns.Add(geriausiasColumn); } skydelis.Controls.Add(geriausias); puslapis.Refresh(); }