Untitled
unknown
plain_text
9 months ago
7.3 kB
3
Indexable
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Windows; using System.Windows.Controls; namespace Ex2Opg1 { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void VeldenLeegmaken() { txtNaam.Clear(); txtPodium.Clear(); dpDatum.SelectedDate = null; txtBeginuur.Clear(); txtEinduur.Clear(); } private void MnuOpenen_Click(object sender, RoutedEventArgs e) { lstFestivals.Items.Clear(); lstArtiesten.Items.Clear(); VeldenLeegmaken(); var dialog = new System.Windows.Forms.FolderBrowserDialog(); if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) { try { string[] files = Directory.GetFiles(dialog.SelectedPath, "*.txt"); if (files.Length == 0) { MessageBox.Show("Geen bestanden gevonden"); return; } foreach (string file in files) { string naam = System.IO.Path.GetFileNameWithoutExtension(file); FestivalBestand festival = new FestivalBestand(naam, file); lstFestivals.Items.Add(festival); } } catch (Exception ex) { MessageBox.Show($"Fout bij het inlezen: {ex.Message}"); } } } private void LstFestivals_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (lstFestivals.SelectedItem == null) return; lstArtiesten.Items.Clear(); VeldenLeegmaken(); FestivalBestand geselecteerdFestival = (FestivalBestand)lstFestivals.SelectedItem; try { string[] lines = File.ReadAllLines(geselecteerdFestival.VolledigPad); for (int i = 0; i < lines.Length; i += 5) { Artiest artiest = new Artiest { Naam = lines[i], Podium = lines[i + 1], Datum = DateTime.Parse(lines[i + 2]), Beginuur = lines[i + 3], Einduur = lines[i + 4] }; lstArtiesten.Items.Add(artiest); } } catch (Exception ex) { MessageBox.Show($"Fout bij het inlezen van het bestand: {ex.Message}"); } } private void BtnArtiestToevoegen_Click(object sender, RoutedEventArgs e) { if (lstFestivals.SelectedItem == null) { MessageBox.Show("Geen festival geselecteerd."); return; } if (string.IsNullOrEmpty(txtNaam.Text) || string.IsNullOrEmpty(txtPodium.Text) || !dpDatum.SelectedDate.HasValue || string.IsNullOrEmpty(txtBeginuur.Text) || string.IsNullOrEmpty(txtEinduur.Text)) { MessageBox.Show("Vul alle velden in."); return; } Artiest artiest = new Artiest { Naam = txtNaam.Text, Podium = txtPodium.Text, Datum = dpDatum.SelectedDate.Value, Beginuur = txtBeginuur.Text, Einduur = txtEinduur.Text }; lstArtiesten.Items.Add(artiest); VeldenLeegmaken(); } private void LstArtiesten_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (lstArtiesten.SelectedItem == null) return; Artiest geselecteerdeArtiest = (Artiest)lstArtiesten.SelectedItem; txtNaam.Text = geselecteerdeArtiest.Naam; txtPodium.Text = geselecteerdeArtiest.Podium; dpDatum.SelectedDate = geselecteerdeArtiest.Datum; txtBeginuur.Text = geselecteerdeArtiest.Beginuur; txtEinduur.Text = geselecteerdeArtiest.Einduur; } private void BtnArtiestWijzigen_Click(object sender, RoutedEventArgs e) { if (lstFestivals.SelectedItem == null) { MessageBox.Show("Geen festival geselecteerd."); return; } if (lstArtiesten.SelectedItem == null) { MessageBox.Show("Geen artiest geselecteerd."); return; } if (string.IsNullOrEmpty(txtNaam.Text) || string.IsNullOrEmpty(txtPodium.Text) || !dpDatum.SelectedDate.HasValue || string.IsNullOrEmpty(txtBeginuur.Text) || string.IsNullOrEmpty(txtEinduur.Text)) { MessageBox.Show("Vul alle velden in."); return; } Artiest geselecteerdeArtiest = (Artiest)lstArtiesten.SelectedItem; geselecteerdeArtiest.Naam = txtNaam.Text; geselecteerdeArtiest.Podium = txtPodium.Text; geselecteerdeArtiest.Datum = dpDatum.SelectedDate.Value; geselecteerdeArtiest.Beginuur = txtBeginuur.Text; geselecteerdeArtiest.Einduur = txtEinduur.Text; lstArtiesten.Items.Refresh(); } private void BtnArtiestVerwijderen_Click(object sender, RoutedEventArgs e) { if (lstFestivals.SelectedItem == null) { MessageBox.Show("Geen festival geselecteerd."); return; } if (lstArtiesten.SelectedItem == null) { MessageBox.Show("Geen artiest geselecteerd."); return; } lstArtiesten.Items.Remove(lstArtiesten.SelectedItem); VeldenLeegmaken(); } private void BtnGeselecteerdFestivalBewaren_Click(object sender, RoutedEventArgs e) { if (lstFestivals.SelectedItem == null) { MessageBox.Show("Geen festival geselecteerd."); return; } FestivalBestand geselecteerdFestival = (FestivalBestand)lstFestivals.SelectedItem; try { using (StreamWriter writer = new StreamWriter(geselecteerdFestival.VolledigPad)) { foreach (Artiest artiest in lstArtiesten.Items) { writer.WriteLine(artiest.Naam); writer.WriteLine(artiest.Podium); writer.WriteLine(artiest.Datum.ToString("dd/MM/yyyy")); writer.WriteLine(artiest.Beginuur); writer.WriteLine(artiest.Einduur); } } MessageBox.Show("Artiesten succesvol opgeslagen."); VeldenLeegmaken(); } catch (Exception ex) { MessageBox.Show($"Fout bij het wegschrijven: {ex.Message}"); } } } }
Editor is loading...
Leave a Comment