
Imports Mediatheek.Data
Imports Mediatheek.DataAcces

Public Class frmAlbumWijzigen
    Inherits System.Windows.Forms.Form

#Region " Windows Form Designer generated code "

    Public Sub New()
        MyBase.New()

        'This call is required by the Windows Form Designer.
        InitializeComponent()

        'Add any initialization after the InitializeComponent() call

    End Sub

    'Meegegeven AlbumId wordt gebruikt om juiste album in te laden..
    Public Sub New(ByVal sAlbumID As String)
        MyBase.New()
        InitializeComponent()
        mGegevenAlbum = clsAlbumDA.GetAlbumByID(sAlbumID).Item(0)

    End Sub

    'Form overrides dispose to clean up the component list.
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub

    'Required by the Windows Form Designer
    Private components As System.ComponentModel.IContainer

    'NOTE: The following procedure is required by the Windows Form Designer
    'It can be modified using the Windows Form Designer.  
    'Do not modify it using the code editor.
    Friend WithEvents Label2 As System.Windows.Forms.Label
    Friend WithEvents Label3 As System.Windows.Forms.Label
    Friend WithEvents Label5 As System.Windows.Forms.Label
    Friend WithEvents lblAlbumNaam As System.Windows.Forms.Label
    Friend WithEvents lblGenre As System.Windows.Forms.Label
    Friend WithEvents lblAlbumLocatie As System.Windows.Forms.Label
    Friend WithEvents clhTitel As System.Windows.Forms.ColumnHeader
    Friend WithEvents chlLiedDuur As System.Windows.Forms.ColumnHeader
    Friend WithEvents gpbLiedjesBeheer As System.Windows.Forms.GroupBox
    Friend WithEvents lvwLiedjes As System.Windows.Forms.ListView
    Friend WithEvents btnVoegLiedToe As System.Windows.Forms.Button
    Friend WithEvents btnWijzigLied As System.Windows.Forms.Button
    Friend WithEvents btnVerwijderLied As System.Windows.Forms.Button
    Friend WithEvents txtDuurLied As System.Windows.Forms.TextBox
    Friend WithEvents Label1 As System.Windows.Forms.Label
    Friend WithEvents lblDuurLied As System.Windows.Forms.Label
    Friend WithEvents gpbGroep As System.Windows.Forms.GroupBox
    Friend WithEvents Label4 As System.Windows.Forms.Label
    Friend WithEvents Label6 As System.Windows.Forms.Label
    Friend WithEvents txtAantalLeden As System.Windows.Forms.TextBox
    Friend WithEvents chbNieuweGroep As System.Windows.Forms.CheckBox
    Friend WithEvents ErrorProvider1 As System.Windows.Forms.ErrorProvider
    Friend WithEvents cboWijzigAlbumGenre As System.Windows.Forms.ComboBox
    Friend WithEvents txtWijzigAlbumProductieHuis As System.Windows.Forms.TextBox
    Friend WithEvents txtWijzigAlbumProductieJaar As System.Windows.Forms.TextBox
    Friend WithEvents txtWijzigAlbumNaam As System.Windows.Forms.TextBox
    Friend WithEvents cboWijzigAlbumLocatie As System.Windows.Forms.ComboBox
    Friend WithEvents txtWijzigId As System.Windows.Forms.TextBox
    Friend WithEvents btnWijzigAlbum As System.Windows.Forms.Button
    Friend WithEvents chlLiedID As System.Windows.Forms.ColumnHeader
    Friend WithEvents cboLiedNaam As System.Windows.Forms.ComboBox
    Friend WithEvents gpbWijzigAlbum As System.Windows.Forms.GroupBox
    Friend WithEvents chlUitvoeringID As System.Windows.Forms.ColumnHeader
    Friend WithEvents cboGroepNaam As System.Windows.Forms.ComboBox
    Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(frmAlbumWijzigen))
        Me.gpbWijzigAlbum = New System.Windows.Forms.GroupBox
        Me.lblGenre = New System.Windows.Forms.Label
        Me.cboWijzigAlbumGenre = New System.Windows.Forms.ComboBox
        Me.txtWijzigAlbumProductieHuis = New System.Windows.Forms.TextBox
        Me.txtWijzigAlbumProductieJaar = New System.Windows.Forms.TextBox
        Me.txtWijzigAlbumNaam = New System.Windows.Forms.TextBox
        Me.Label3 = New System.Windows.Forms.Label
        Me.Label2 = New System.Windows.Forms.Label
        Me.lblAlbumNaam = New System.Windows.Forms.Label
        Me.cboWijzigAlbumLocatie = New System.Windows.Forms.ComboBox
        Me.lblAlbumLocatie = New System.Windows.Forms.Label
        Me.btnWijzigAlbum = New System.Windows.Forms.Button
        Me.txtWijzigId = New System.Windows.Forms.TextBox
        Me.Label5 = New System.Windows.Forms.Label
        Me.txtDuurLied = New System.Windows.Forms.TextBox
        Me.gpbLiedjesBeheer = New System.Windows.Forms.GroupBox
        Me.cboLiedNaam = New System.Windows.Forms.ComboBox
        Me.Label1 = New System.Windows.Forms.Label
        Me.btnVoegLiedToe = New System.Windows.Forms.Button
        Me.lvwLiedjes = New System.Windows.Forms.ListView
        Me.clhTitel = New System.Windows.Forms.ColumnHeader
        Me.chlLiedDuur = New System.Windows.Forms.ColumnHeader
        Me.chlLiedID = New System.Windows.Forms.ColumnHeader
        Me.chlUitvoeringID = New System.Windows.Forms.ColumnHeader
        Me.btnWijzigLied = New System.Windows.Forms.Button
        Me.btnVerwijderLied = New System.Windows.Forms.Button
        Me.lblDuurLied = New System.Windows.Forms.Label
        Me.gpbGroep = New System.Windows.Forms.GroupBox
        Me.chbNieuweGroep = New System.Windows.Forms.CheckBox
        Me.txtAantalLeden = New System.Windows.Forms.TextBox
        Me.Label6 = New System.Windows.Forms.Label
        Me.cboGroepNaam = New System.Windows.Forms.ComboBox
        Me.Label4 = New System.Windows.Forms.Label
        Me.ErrorProvider1 = New System.Windows.Forms.ErrorProvider
        Me.PictureBox1 = New System.Windows.Forms.PictureBox
        Me.gpbWijzigAlbum.SuspendLayout()
        Me.gpbLiedjesBeheer.SuspendLayout()
        Me.gpbGroep.SuspendLayout()
        Me.SuspendLayout()
        '
        'gpbWijzigAlbum
        '
        Me.gpbWijzigAlbum.Controls.Add(Me.lblGenre)
        Me.gpbWijzigAlbum.Controls.Add(Me.cboWijzigAlbumGenre)
        Me.gpbWijzigAlbum.Controls.Add(Me.txtWijzigAlbumProductieHuis)
        Me.gpbWijzigAlbum.Controls.Add(Me.txtWijzigAlbumProductieJaar)
        Me.gpbWijzigAlbum.Controls.Add(Me.txtWijzigAlbumNaam)
        Me.gpbWijzigAlbum.Controls.Add(Me.Label3)
        Me.gpbWijzigAlbum.Controls.Add(Me.Label2)
        Me.gpbWijzigAlbum.Controls.Add(Me.lblAlbumNaam)
        Me.gpbWijzigAlbum.Controls.Add(Me.cboWijzigAlbumLocatie)
        Me.gpbWijzigAlbum.Controls.Add(Me.lblAlbumLocatie)
        Me.gpbWijzigAlbum.Location = New System.Drawing.Point(16, 80)
        Me.gpbWijzigAlbum.Name = "gpbWijzigAlbum"
        Me.gpbWijzigAlbum.Size = New System.Drawing.Size(400, 120)
        Me.gpbWijzigAlbum.TabIndex = 0
        Me.gpbWijzigAlbum.TabStop = False
        Me.gpbWijzigAlbum.Text = "Wijzig een album"
        '
        'lblGenre
        '
        Me.lblGenre.Location = New System.Drawing.Point(200, 24)
        Me.lblGenre.Name = "lblGenre"
        Me.lblGenre.Size = New System.Drawing.Size(40, 23)
        Me.lblGenre.TabIndex = 7
        Me.lblGenre.Text = "Genre"
        '
        'cboWijzigAlbumGenre
        '
        Me.cboWijzigAlbumGenre.ImeMode = System.Windows.Forms.ImeMode.NoControl
        Me.cboWijzigAlbumGenre.Location = New System.Drawing.Point(240, 24)
        Me.cboWijzigAlbumGenre.Name = "cboWijzigAlbumGenre"
        Me.cboWijzigAlbumGenre.Size = New System.Drawing.Size(64, 21)
        Me.cboWijzigAlbumGenre.TabIndex = 6
        '
        'txtWijzigAlbumProductieHuis
        '
        Me.txtWijzigAlbumProductieHuis.Location = New System.Drawing.Point(176, 56)
        Me.txtWijzigAlbumProductieHuis.Name = "txtWijzigAlbumProductieHuis"
        Me.txtWijzigAlbumProductieHuis.Size = New System.Drawing.Size(128, 20)
        Me.txtWijzigAlbumProductieHuis.TabIndex = 5
        Me.txtWijzigAlbumProductieHuis.Text = ""
        '
        'txtWijzigAlbumProductieJaar
        '
        Me.txtWijzigAlbumProductieJaar.Location = New System.Drawing.Point(72, 56)
        Me.txtWijzigAlbumProductieJaar.Name = "txtWijzigAlbumProductieJaar"
        Me.txtWijzigAlbumProductieJaar.Size = New System.Drawing.Size(40, 20)
        Me.txtWijzigAlbumProductieJaar.TabIndex = 4
        Me.txtWijzigAlbumProductieJaar.Text = ""
        '
        'txtWijzigAlbumNaam
        '
        Me.txtWijzigAlbumNaam.Location = New System.Drawing.Point(72, 24)
        Me.txtWijzigAlbumNaam.Name = "txtWijzigAlbumNaam"
        Me.txtWijzigAlbumNaam.Size = New System.Drawing.Size(120, 20)
        Me.txtWijzigAlbumNaam.TabIndex = 3
        Me.txtWijzigAlbumNaam.Text = ""
        '
        'Label3
        '
        Me.Label3.Location = New System.Drawing.Point(120, 56)
        Me.Label3.Name = "Label3"
        Me.Label3.Size = New System.Drawing.Size(56, 24)
        Me.Label3.TabIndex = 2
        Me.Label3.Text = "Productie"
        '
        'Label2
        '
        Me.Label2.Location = New System.Drawing.Point(16, 56)
        Me.Label2.Name = "Label2"
        Me.Label2.Size = New System.Drawing.Size(40, 24)
        Me.Label2.TabIndex = 1
        Me.Label2.Text = "Jaar"
        '
        'lblAlbumNaam
        '
        Me.lblAlbumNaam.Location = New System.Drawing.Point(16, 24)
        Me.lblAlbumNaam.Name = "lblAlbumNaam"
        Me.lblAlbumNaam.Size = New System.Drawing.Size(40, 24)
        Me.lblAlbumNaam.TabIndex = 0
        Me.lblAlbumNaam.Text = "Album"
        '
        'cboWijzigAlbumLocatie
        '
        Me.cboWijzigAlbumLocatie.Location = New System.Drawing.Point(72, 88)
        Me.cboWijzigAlbumLocatie.Name = "cboWijzigAlbumLocatie"
        Me.cboWijzigAlbumLocatie.Size = New System.Drawing.Size(232, 21)
        Me.cboWijzigAlbumLocatie.TabIndex = 6
        '
        'lblAlbumLocatie
        '
        Me.lblAlbumLocatie.Location = New System.Drawing.Point(16, 88)
        Me.lblAlbumLocatie.Name = "lblAlbumLocatie"
        Me.lblAlbumLocatie.Size = New System.Drawing.Size(48, 23)
        Me.lblAlbumLocatie.TabIndex = 7
        Me.lblAlbumLocatie.Text = "Locatie"
        '
        'btnWijzigAlbum
        '
        Me.btnWijzigAlbum.Location = New System.Drawing.Point(312, 480)
        Me.btnWijzigAlbum.Name = "btnWijzigAlbum"
        Me.btnWijzigAlbum.Size = New System.Drawing.Size(104, 23)
        Me.btnWijzigAlbum.TabIndex = 16
        Me.btnWijzigAlbum.Text = "Wijzigen"
        '
        'txtWijzigId
        '
        Me.txtWijzigId.Location = New System.Drawing.Point(56, 480)
        Me.txtWijzigId.Name = "txtWijzigId"
        Me.txtWijzigId.ReadOnly = True
        Me.txtWijzigId.Size = New System.Drawing.Size(48, 20)
        Me.txtWijzigId.TabIndex = 17
        Me.txtWijzigId.Text = ""
        '
        'Label5
        '
        Me.Label5.Location = New System.Drawing.Point(24, 488)
        Me.Label5.Name = "Label5"
        Me.Label5.Size = New System.Drawing.Size(24, 23)
        Me.Label5.TabIndex = 18
        Me.Label5.Text = "ID"
        '
        'txtDuurLied
        '
        Me.txtDuurLied.Location = New System.Drawing.Point(328, 152)
        Me.txtDuurLied.Name = "txtDuurLied"
        Me.txtDuurLied.Size = New System.Drawing.Size(56, 20)
        Me.txtDuurLied.TabIndex = 0
        Me.txtDuurLied.Text = ""
        '
        'gpbLiedjesBeheer
        '
        Me.gpbLiedjesBeheer.Controls.Add(Me.cboLiedNaam)
        Me.gpbLiedjesBeheer.Controls.Add(Me.Label1)
        Me.gpbLiedjesBeheer.Controls.Add(Me.btnVoegLiedToe)
        Me.gpbLiedjesBeheer.Controls.Add(Me.lvwLiedjes)
        Me.gpbLiedjesBeheer.Controls.Add(Me.txtDuurLied)
        Me.gpbLiedjesBeheer.Controls.Add(Me.btnWijzigLied)
        Me.gpbLiedjesBeheer.Controls.Add(Me.btnVerwijderLied)
        Me.gpbLiedjesBeheer.Controls.Add(Me.lblDuurLied)
        Me.gpbLiedjesBeheer.Location = New System.Drawing.Point(16, 256)
        Me.gpbLiedjesBeheer.Name = "gpbLiedjesBeheer"
        Me.gpbLiedjesBeheer.Size = New System.Drawing.Size(400, 216)
        Me.gpbLiedjesBeheer.TabIndex = 19
        Me.gpbLiedjesBeheer.TabStop = False
        Me.gpbLiedjesBeheer.Text = "Wijzig de liedjes"
        '
        'cboLiedNaam
        '
        Me.cboLiedNaam.Location = New System.Drawing.Point(40, 152)
        Me.cboLiedNaam.Name = "cboLiedNaam"
        Me.cboLiedNaam.Size = New System.Drawing.Size(240, 21)
        Me.cboLiedNaam.TabIndex = 4
        '
        'Label1
        '
        Me.Label1.Location = New System.Drawing.Point(8, 152)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(32, 23)
        Me.Label1.TabIndex = 3
        Me.Label1.Text = "Titel"
        '
        'btnVoegLiedToe
        '
        Me.btnVoegLiedToe.Location = New System.Drawing.Point(16, 184)
        Me.btnVoegLiedToe.Name = "btnVoegLiedToe"
        Me.btnVoegLiedToe.Size = New System.Drawing.Size(104, 23)
        Me.btnVoegLiedToe.TabIndex = 2
        Me.btnVoegLiedToe.Text = "Voeg Toe"
        '
        'lvwLiedjes
        '
        Me.lvwLiedjes.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.clhTitel, Me.chlLiedDuur, Me.chlLiedID, Me.chlUitvoeringID})
        Me.lvwLiedjes.HideSelection = False
        Me.lvwLiedjes.Location = New System.Drawing.Point(16, 24)
        Me.lvwLiedjes.MultiSelect = False
        Me.lvwLiedjes.Name = "lvwLiedjes"
        Me.lvwLiedjes.Size = New System.Drawing.Size(368, 120)
        Me.lvwLiedjes.TabIndex = 1
        Me.lvwLiedjes.View = System.Windows.Forms.View.Details
        '
        'clhTitel
        '
        Me.clhTitel.Text = "Titel"
        Me.clhTitel.Width = 222
        '
        'chlLiedDuur
        '
        Me.chlLiedDuur.Text = "Duur"
        '
        'chlLiedID
        '
        Me.chlLiedID.Text = "ID"
        Me.chlLiedID.Width = 41
        '
        'chlUitvoeringID
        '
        Me.chlUitvoeringID.Text = "uID"
        Me.chlUitvoeringID.Width = 40
        '
        'btnWijzigLied
        '
        Me.btnWijzigLied.Location = New System.Drawing.Point(152, 184)
        Me.btnWijzigLied.Name = "btnWijzigLied"
        Me.btnWijzigLied.Size = New System.Drawing.Size(104, 23)
        Me.btnWijzigLied.TabIndex = 2
        Me.btnWijzigLied.Text = "Wijzig"
        '
        'btnVerwijderLied
        '
        Me.btnVerwijderLied.Location = New System.Drawing.Point(280, 184)
        Me.btnVerwijderLied.Name = "btnVerwijderLied"
        Me.btnVerwijderLied.Size = New System.Drawing.Size(104, 23)
        Me.btnVerwijderLied.TabIndex = 2
        Me.btnVerwijderLied.Text = "Verwijder"
        '
        'lblDuurLied
        '
        Me.lblDuurLied.Location = New System.Drawing.Point(288, 152)
        Me.lblDuurLied.Name = "lblDuurLied"
        Me.lblDuurLied.Size = New System.Drawing.Size(32, 23)
        Me.lblDuurLied.TabIndex = 3
        Me.lblDuurLied.Text = "Duur"
        '
        'gpbGroep
        '
        Me.gpbGroep.Controls.Add(Me.chbNieuweGroep)
        Me.gpbGroep.Controls.Add(Me.txtAantalLeden)
        Me.gpbGroep.Controls.Add(Me.Label6)
        Me.gpbGroep.Controls.Add(Me.cboGroepNaam)
        Me.gpbGroep.Controls.Add(Me.Label4)
        Me.gpbGroep.Location = New System.Drawing.Point(16, 200)
        Me.gpbGroep.Name = "gpbGroep"
        Me.gpbGroep.Size = New System.Drawing.Size(400, 56)
        Me.gpbGroep.TabIndex = 20
        Me.gpbGroep.TabStop = False
        Me.gpbGroep.Text = "Wijzig de Artiest Gegevens"
        '
        'chbNieuweGroep
        '
        Me.chbNieuweGroep.Location = New System.Drawing.Point(9, 20)
        Me.chbNieuweGroep.Name = "chbNieuweGroep"
        Me.chbNieuweGroep.TabIndex = 4
        Me.chbNieuweGroep.Text = "Nieuwe Groep?"
        '
        'txtAantalLeden
        '
        Me.txtAantalLeden.Enabled = False
        Me.txtAantalLeden.Location = New System.Drawing.Point(368, 24)
        Me.txtAantalLeden.Name = "txtAantalLeden"
        Me.txtAantalLeden.Size = New System.Drawing.Size(24, 20)
        Me.txtAantalLeden.TabIndex = 3
        Me.txtAantalLeden.Text = ""
        '
        'Label6
        '
        Me.Label6.Location = New System.Drawing.Point(288, 24)
        Me.Label6.Name = "Label6"
        Me.Label6.Size = New System.Drawing.Size(72, 23)
        Me.Label6.TabIndex = 2
        Me.Label6.Text = "Aantal Leden"
        '
        'cboGroepNaam
        '
        Me.cboGroepNaam.Location = New System.Drawing.Point(160, 24)
        Me.cboGroepNaam.Name = "cboGroepNaam"
        Me.cboGroepNaam.Size = New System.Drawing.Size(121, 21)
        Me.cboGroepNaam.TabIndex = 1
        '
        'Label4
        '
        Me.Label4.Location = New System.Drawing.Point(120, 24)
        Me.Label4.Name = "Label4"
        Me.Label4.Size = New System.Drawing.Size(40, 23)
        Me.Label4.TabIndex = 0
        Me.Label4.Text = "Naam:"
        '
        'ErrorProvider1
        '
        Me.ErrorProvider1.ContainerControl = Me
        '
        'PictureBox1
        '
        Me.PictureBox1.Image = CType(resources.GetObject("PictureBox1.Image"), System.Drawing.Image)
        Me.PictureBox1.Location = New System.Drawing.Point(0, 0)
        Me.PictureBox1.Name = "PictureBox1"
        Me.PictureBox1.Size = New System.Drawing.Size(424, 72)
        Me.PictureBox1.TabIndex = 21
        Me.PictureBox1.TabStop = False
        '
        'frmAlbumWijzigen
        '
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(418, 511)
        Me.Controls.Add(Me.PictureBox1)
        Me.Controls.Add(Me.gpbGroep)
        Me.Controls.Add(Me.gpbLiedjesBeheer)
        Me.Controls.Add(Me.Label5)
        Me.Controls.Add(Me.txtWijzigId)
        Me.Controls.Add(Me.btnWijzigAlbum)
        Me.Controls.Add(Me.gpbWijzigAlbum)
        Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
        Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
        Me.MaximizeBox = False
        Me.Name = "frmAlbumWijzigen"
        Me.Text = "Album Wijzigen"
        Me.gpbWijzigAlbum.ResumeLayout(False)
        Me.gpbLiedjesBeheer.ResumeLayout(False)
        Me.gpbGroep.ResumeLayout(False)
        Me.ResumeLayout(False)

    End Sub

#End Region

    Public Event AlbumGewijzigd()

    Dim mGegevenAlbum As clsAlbum
    Dim mbUitgevoerd As Boolean = False
    Dim mUitvoeringGroepId As String = ""
    Dim mUitvoeringGenreId As String = ""
    Dim moCurrentSelectedLied As New clsLied("", "", "0:00")


#Region "Events"

    Private Sub frmAlbumWijzigen_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        EnableDisableControls()
        txtWijzigId.Text = mGegevenAlbum.AlbumID
        opVullen(mGegevenAlbum)
    End Sub

    Private Sub frmAlbumWijzigen_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing

        'Validatie dan vragen 
        CheckUitgevoerdOpDatabase(e)
    End Sub

    'gpbGroep

    Private Sub chbNieuweGroep_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chbNieuweGroep.CheckedChanged
        If chbNieuweGroep.Checked = True Then
            txtAantalLeden.Enabled = True
            cboGroepNaam.Text = ""
        ElseIf chbNieuweGroep.Checked = False Then
            GroepOphalen()
        End If
    End Sub

    Private Sub cboGroepNaam_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboGroepNaam.SelectedIndexChanged
        Dim oGroep As clsGroep = cboGroepNaam.SelectedItem
        txtAantalLeden.Text = oGroep.AantalLeden
    End Sub

    'gpbLiedjesBeheer


    Private Sub lvwLiedjes_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lvwLiedjes.Click

        Dim oLitem As ListViewItem

        If Not lvwLiedjes.SelectedItems.Count() = 0 Then

            For Each oLitem In lvwLiedjes.SelectedItems

                moCurrentSelectedLied.LiedNaam = oLitem.SubItems(0).Text
                moCurrentSelectedLied.LiedDuur = oLitem.SubItems(1).Text

                cboLiedNaam.Text = moCurrentSelectedLied.LiedNaam
                txtDuurLied.Text = moCurrentSelectedLied.LiedDuur

            Next

        End If

    End Sub

    Private Sub cboLiedNaam_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboLiedNaam.SelectedIndexChanged
        Dim oLied As clsLied = cboLiedNaam.SelectedItem
        txtDuurLied.Text = oLied.LiedDuur

    End Sub




#End Region

#Region "EnableDisableControls  - Reset Input Fields"

    Public Sub EnableDisableControls()
        Dim arlUitvoeringen As ArrayList
        arlUitvoeringen = clsUitvoeringDA.GetUitvoeringenByAlbumID(mGegevenAlbum.AlbumID)
        If arlUitvoeringen.Count > 0 Then
            btnWijzigAlbum.Enabled = True
        ElseIf arlUitvoeringen.Count = 0 Then
            btnWijzigAlbum.Enabled = False
        End If
    End Sub

    Public Sub resetInputFields()
        txtWijzigAlbumNaam.Text = ""
        txtWijzigAlbumProductieHuis.Text = ""
        txtWijzigAlbumProductieJaar.Text = ""
        lvwLiedjes.Items.Clear()

        EnableDisableControls()
    End Sub



#End Region

#Region "Buttons events"
    Private Sub btnVoegLiedToe_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVoegLiedToe.Click
        Dim errorMessage As String



        If cboLiedNaam.Text = "" Then
            MessageBox.Show("Vul een titel in")
        Else
            If valideerLiedDuur(txtDuurLied.Text, errorMessage) = False Then
                MessageBox.Show("Vul duur lied in")
            Else
                VoegLiedToe()
                cboLiedNaam.Text = ""
                txtDuurLied.Text = "00:00"
            End If

        End If




        EnableDisableControls()
    End Sub


    Private Sub btnWijzigLied_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnWijzigLied.Click
        WijzigLied()

        EnableDisableControls()


    End Sub


    Private Sub btnVerwijderLied_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVerwijderLied.Click
        VerwijderLied()
        EnableDisableControls()

        If lvwLiedjes.Items.Count() <> 0 Then
            lvwLiedjes.Items(0).Selected = True
        End If

    End Sub

    Private Sub btnWijzigAlbum_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnWijzigAlbum.Click
        If Validatie() And clsValidatie.checkValidString(txtWijzigAlbumNaam.Text) Then
            voerUitOpDatabase()
            mbUitgevoerd = True

        End If


    End Sub


#End Region

#Region "Groep beheer"
    Private Sub groepUitvoerenOpDatabase()
        Try

            If chbNieuweGroep.Checked = True Then

                'groep toevoegen

                Dim arlGroepen As ArrayList
                arlGroepen = clsGroepDA.GetGroepen

                Dim sGroepID As String = clsGroepDA.getVolgendGroepId
                Dim sGroepNaam As String = cboGroepNaam.Text
                Dim oGroep As New clsGroep(sGroepID, sGroepNaam, txtAantalLeden.Text)

                clsGroepDA.VoegGroepToe(oGroep)

                mUitvoeringGroepID = oGroep.GroepID

            Else

                Dim oGroep As clsGroep
                oGroep = cboGroepNaam.SelectedItem

                mUitvoeringGroepID = oGroep.GroepID

            End If

            clsUitvoeringDA.WijzigUitvoeringenGroepByAlbum(txtWijzigId.Text, mUitvoeringGroepID)

        Catch ex As Exception
            Debug.WriteLine(ex)
            MsgBox(ex.ToString, MsgBoxStyle.OKOnly, "Er tradt een fout op bij het toevoegen van de artiestgegevens in de database [ oGroep in tblGroep ]")
        End Try
    End Sub

#End Region

#Region "Liedjesbeheer"

    Private Sub VoegLiedToe()

        btnVerwijderLied.Enabled = True
        btnWijzigLied.Enabled = True

        EnableDisableControls()

        Dim sLiedNaam As New String(cboLiedNaam.Text)
        Dim sLiedDuur As New String(txtDuurLied.Text)
        Dim sLiedID As New String(clsLiedDA.getVolgendLiedId.ToString)

        Dim oLied As New clsLied(sLiedDuur, sLiedNaam, sLiedID)

        'Dim moCurrentSelectedLied As clsLied

        oLied.LiedNaam = sLiedNaam
        oLied.LiedDuur = sLiedDuur
        oLied.LiedID = sLiedID

        Dim oLitm As ListViewItem
        oLitm = New ListViewItem

        oLitm.Text = oLied.LiedNaam
        oLitm.SubItems.Add(oLied.LiedDuur)
        oLitm.SubItems.Add(oLied.LiedID)

        'lied object in listview liedjes steken

        lvwLiedjes.Items.Add(oLitm)

        'lied object in database steken

        clsLiedDA.VoegLiedToe(oLied)

        voegUitvoeringToe(oLied)


    End Sub

    Private Sub WijzigLied()

        If Not lvwLiedjes.SelectedItems.Count() = 0 Then

            Dim oLitm As New ListViewItem



            oLitm = lvwLiedjes.SelectedItems.Item(0)

            oLitm.Text = cboLiedNaam.Text
            oLitm.SubItems(1).Text = txtDuurLied.Text

            Dim oLied As New clsLied(lvwLiedjes.SelectedItems.Item(0).SubItems(2).Text, cboLiedNaam.Text, txtDuurLied.Text)

            clsLiedDA.WijzigLied(oLied)



        End If
    End Sub

    Private Sub VerwijderLied()
        EnableDisableControls()
        If Not lvwLiedjes.SelectedItems.Count() = 0 Then

            'in DB verwijderen
            'clsUitvoeringDA.VerwijderUitvoeringenByLiedID(54)
            'clsUitvoeringDA.VerwijderUitvoeringByAlbumEnLiedID(mGegevenAlbum.AlbumID, lvwLiedjes.SelectedItems.Item(0).SubItems(2).Text)



            'alle uitvoeringen van het huidig gekozen lied in array steken

            Dim arlUitvoeringen As ArrayList = clsUitvoeringDA.GetUitvoeringenByLiedID(lvwLiedjes.SelectedItems.Item(0).SubItems(2).Text)



            'alle uitvoeringen van het huidig gekozen lied verwijderen die ook op het album staan

            For Each oUitvoering As clsUitvoering In arlUitvoeringen

                If oUitvoering.AlbumID = mGegevenAlbum.AlbumID Then
                    clsUitvoeringDA.VerwijderUitvoeringenByID(oUitvoering.UitvoeringID)
                End If

            Next



            'clsLiedDA.VerwijderLied(54) 'lvwLiedjes.SelectedItems.Item(0).SubItems(2).Text)
            'in listview verwijderen
            lvwLiedjes.Items.Remove(lvwLiedjes.SelectedItems.Item(0))

        End If

        If lvwLiedjes.Items.Count() = 0 Then
            btnVerwijderLied.Enabled = False
            btnWijzigLied.Enabled = False
        End If
    End Sub

    Private Sub voegUitvoeringToe(ByVal oLied As clsLied)
        Try


            ' Dim nieuwLiedID As Integer = clsLiedDA.getVolgendLiedId
            '  Dim nieuweUitvoeringID As String = clsUitvoeringDA.getVolgendUitvoeringId



            ' For Each oLitm As ListViewItem In lvwLiedjes.Items

            ''nieuwe liedjes in tblLied
            'nieuwLiedID += 1



            'Dim sLiedNaam As String = oLitm.Text
            'Dim sLiedDuur As String = oLitm.SubItems(1).Text
            'Dim sLiedID As String = clsLiedDA.getVolgendLiedId '= nieuwLiedID 

            'Dim oLied As New clsLied(sLiedID, sLiedNaam, sLiedDuur)

            'clsLiedDA.VoegLiedToe(oLied) word al toegevoegd  bij VoegLiedToe()

            Dim mUitvoeringGroepID As String

            Dim mUitvoeringGenreID As String

            If cboWijzigAlbumGenre.SelectedIndex <> -1 Then
                mUitvoeringGenreID = cboWijzigAlbumGenre.SelectedIndex + 1

            End If

            If cboGroepNaam.SelectedIndex <> -1 Then
                mUitvoeringGroepID = cboGroepNaam.SelectedIndex + 1
            End If

            Dim sUitvoeringID As String = clsUitvoeringDA.getVolgendUitvoeringId '= nieuweUitvoeringID 'UitvoeringID
            Dim sGroepID As String = mUitvoeringGroepID   'GroepID
            Dim sLiedId As String = oLied.LiedID
            Dim sGenreID As String = mUitvoeringGenreID 'GenreID
            Dim sAlbumID As String = mGegevenAlbum.AlbumID 'AlbumID

            Dim oUitvoering As New clsUitvoering(sUitvoeringID, sGroepID, sLiedId, sGenreID, sAlbumID)

            clsUitvoeringDA.VoegUitvoeringToe(oUitvoering)
            '  MsgBox("Volgende uitvoering is toegevoegd:" & oUitvoering.ToString)

            '    Next

            'resetInputFields()

            'RaiseEvent LiedToegevoegd()

            'mUitvoeringsID = sGroepID

            'BindGroepenCombobox()

        Catch ex As Exception

            MessageBox.Show("Er tradt een fout op bij het toevoegen van de uitvoeringen in de database")

        End Try
    End Sub

    Private Sub uitvoeringenUitvoerenOpDatabase()
        Try


            ' Dim nieuwLiedID As Integer = clsLiedDA.getVolgendLiedId
            '  Dim nieuweUitvoeringID As String = clsUitvoeringDA.getVolgendUitvoeringId



            For Each oLitm As ListViewItem In lvwLiedjes.Items



                Dim mUitvoeringGroepID As String

                Dim mUitvoeringGenreID As String

                If cboWijzigAlbumGenre.SelectedIndex <> -1 Then
                    mUitvoeringGenreID = cboWijzigAlbumGenre.SelectedIndex + 1

                End If

                If cboGroepNaam.SelectedIndex <> -1 Then
                    mUitvoeringGroepID = cboGroepNaam.SelectedIndex + 1
                End If

                Dim sUitvoeringID As String = clsUitvoeringDA.getVolgendUitvoeringId '= nieuweUitvoeringID 'UitvoeringID
                Dim sGroepID As String = mUitvoeringGroepID   'GroepID
                Dim sLiedId As String = oLitm.SubItems(2).Text
                Dim sGenreID As String = mUitvoeringGenreID 'GenreID
                Dim sAlbumID As String = mGegevenAlbum.AlbumID 'AlbumID

                Dim oUitvoering As New clsUitvoering(sUitvoeringID, sGroepID, sLiedId, sGenreID, sAlbumID)

                clsUitvoeringDA.VoegUitvoeringToe(oUitvoering)

            Next

            'resetInputFields()

            'RaiseEvent LiedToegevoegd()

            'mUitvoeringsID = sGroepID
            '
            'BindGroepenCombobox()













        Catch ex As Exception

            MessageBox.Show("Er tradt een fout op bij het toevoegen van de uitvoeringen in de database")

        End Try
    End Sub



#End Region

#Region "Nieuw Album"




    Private Sub albumUitvoerenOpDatabase()

        Try
            If cboWijzigAlbumGenre.SelectedIndex <> -1 Then
                Dim oGenre As clsGenre
                oGenre = cboWijzigAlbumGenre.SelectedItem
                mUitvoeringGenreID = oGenre.GenreID
            End If

            If cboGroepNaam.SelectedIndex <> -1 Then
                clsUitvoeringDA.WijzigUitvoeringenGroepByAlbum(txtWijzigId.Text, mUitvoeringGroepID)
            End If

            Dim sAlbID As String = txtWijzigId.Text
            Dim sAlbNaam As String = txtWijzigAlbumNaam.Text
            Dim sAlbJaar As String = txtWijzigAlbumProductieJaar.Text
            Dim sAlbProdH As String = txtWijzigAlbumProductieHuis.Text
            Dim sAlbNrs As String = clsUitvoeringDA.GetUitvoeringenByAlbumID(txtWijzigId.Text).Count()
            Dim sAlbGenre As String = mUitvoeringGenreID
            Dim oLocatie As clsLocatie
            oLocatie = cboWijzigAlbumLocatie.SelectedItem
            Dim sAlbLoc As String = oLocatie.Id
            Dim sAlbFoto As String = "een of ander pad"

            Dim oAlbum As New clsAlbum(sAlbID, sAlbNaam, sAlbJaar, sAlbProdH, sAlbNrs, sAlbGenre, sAlbLoc, sAlbFoto)

            clsAlbumDA.WijzigAlbum(oAlbum)


            RaiseEvent AlbumGewijzigd()


        Catch Ex As Exception
            Debug.WriteLine(Ex)
            MsgBox(Ex.ToString, MsgBoxStyle.OKOnly, "Er tradt een onverwachte fout op bij het wijzigen van het Album")
        End Try

    End Sub


#End Region

#Region "Validatie"



    Private Function Validatie() As Boolean
    
        If checkFieldsNotEmpty() And checkMaxChar() And ControleerLocatie(cboWijzigAlbumLocatie.SelectedItem, mGegevenAlbum) Then

            Return True
        End If


    End Function

    Private Function checkFieldsNotEmpty() As Boolean
        If txtWijzigAlbumProductieJaar.Text.Length = 0 Or txtWijzigAlbumProductieHuis.Text.Length = 0 Or txtWijzigAlbumNaam.Text.Length = 0 Then
            MsgBox("Gelieve alle velden in te vullen.", MsgBoxStyle.OKOnly, "Ongeldige invoergegevens.")
            Return False
        Else
            Return True
        End If
    End Function

    Private Function checkMaxChar() As Boolean
        If txtWijzigAlbumProductieHuis.Text.Length > 50 Or txtWijzigAlbumNaam.Text.Length > 50 Then
            MsgBox("Gelieve niet meer dan 50 karakters in te vullen.", MsgBoxStyle.OKOnly, "Ongeldige invoergegevens.")
            Return False
        Else
            Return True
        End If
    End Function

    Private Function checkMaxChar(ByVal sString As String, ByVal iMax As Integer) As Boolean
        If sString.Length > iMax Then
            MsgBox(sString & " is geen geldige ingave." & vbCrLf & vbCrLf & "Gelieve niet meer dan " & iMax & " karakters in te vullen.", MsgBoxStyle.OKOnly, "Ongeldige invoergegevens.")
            Return False
        Else
            Return True
        End If
    End Function

    Private Sub CheckAantalLiedjes(ByVal e As System.ComponentModel.CancelEventArgs)



        If lvwLiedjes.Items.Count() = 0 Then

            ' msgbox variabelen
            Dim Message As String = "Je moet eerst minstens 1 liedje toevoegen aan het album."
            Dim Caption As String = "Albumgegevens onvolledig."
            Dim Buttons As MessageBoxButtons = MessageBoxButtons.OK

            Dim Result As DialogResult

            'msgbox functie (as boolean) oproepen

            Result = MessageBox.Show(Me, Message, Caption, Buttons)

            'afhankelijk van true/false result:

            Select Case Result

                Case DialogResult.OK
                    e.Cancel = True
                    'annuleert sluiten van form

                    cboLiedNaam.Focus()
                    cboLiedNaam.Text = "vul liedje in"
                    cboLiedNaam.SelectAll()

                Case DialogResult.No


            End Select

        ElseIf lvwLiedjes.Items.Count() > 0 Then




        End If

    End Sub

    Private Sub CheckUitgevoerdOpDatabase(ByVal e As System.ComponentModel.CancelEventArgs)



        If mbUitgevoerd = False Then

            ' msgbox variabelen

            Dim Message As String = "De veranderingen zijn nog niet uitgevoerd op de database, wilt u dat nu doen?"
            Dim Caption As String = "Database update pending."
            Dim Buttons As MessageBoxButtons = MessageBoxButtons.YesNo

            Dim Result As DialogResult

            'Displays the MessageBox

            Result = MessageBox.Show(Me, Message, Caption, Buttons)

            ' Gets the result of the MessageBox display.

            Select Case Result

                Case DialogResult.Yes
                    e.Cancel = True
                    ' Closes the parent form.
                    '   CheckAantalLiedjes(e)

                    If Validatie() = True Then
                        voerUitOpDatabase()
                        mbUitgevoerd = True
                    End If

                Case DialogResult.No



            End Select

        End If

    End Sub

#Region "album"
    Private Function valideerAlbumNaam(ByVal sAlbumNaam As String, ByRef errorMessage As String) As Boolean

        If txtWijzigAlbumNaam.Text.Length = 0 Then
            errorMessage = "Albumnaam moet ingevuld worden"
            Return False

        End If


        Dim arlAlbums As ArrayList
        Dim mbGeldig As Boolean = True
        arlAlbums = clsAlbumDA.GetAlbums
        For Each oAlbum As clsAlbum In arlAlbums
            If Not oAlbum.AlbumNaam.ToLower = mGegevenAlbum.AlbumNaam.ToLower Then
                If oAlbum.AlbumNaam.ToLower = sAlbumNaam.ToLower Then
                    mbGeldig = False
                    MsgBox("Kies een andere albumnaam", MsgBoxStyle.OKOnly, "Albumnaam reeds in database")
                End If
            End If
        Next




        errorMessage = sAlbumNaam & " bestaat al als albumnaam... kies een andere albumnaam."
        Return mbGeldig
    End Function

    Private Sub txtWijzigAlbumNaam_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtWijzigAlbumNaam.Validating
        Dim errorMsg As String
        If Not valideerAlbumNaam(txtWijzigAlbumNaam.Text, errorMsg) Then
            ' Cancel the event and select the text to be corrected by the user.
            e.Cancel = True
            txtDuurLied.Select(0, txtWijzigAlbumNaam.Text.Length)

            ' Set the ErrorProvider error with the text to display. 
            Me.ErrorProvider1.SetError(txtWijzigAlbumNaam, errorMsg)
        End If
    End Sub

    Private Sub txtWijzigAlbumNaam_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtWijzigAlbumNaam.Validated
        ErrorProvider1.SetError(txtWijzigAlbumNaam, "")
    End Sub

#End Region

#Region "Locaties"
    Private Function ControleerLocatie(ByVal oLocatie As clsLocatie, ByVal oAlbum As clsAlbum) As Boolean

        oLocatie = cboWijzigAlbumLocatie.SelectedItem

        'als locatie id van het album dat gewijzigd wordt gelijk is aan het geselecteerde
        'dan word et niet gecontroleerd (ervan uitgaand dat dit album een van de albums is ter plekke)

        If Not oAlbum.LocatieId = oLocatie.Id Then
            If oLocatie.MaxAantal < clsAlbumDA.GetAlbumsByLocatieID(oLocatie.Id).Count + 1 Then
                MsgBox("Aantal: " & clsAlbumDA.GetAlbumsByLocatieID(oLocatie.Id).Count & "    Maximum: " & oLocatie.MaxAantal, MsgBoxStyle.OKCancel, "Het maximum aantal albums op die locatie is reeds bereikt, gelieve een andere locatie te kiezen") 'oLocatie.Id).Count
                Return False
            Else
                Return True
            End If
        Else
            Return True
        End If
     

    End Function


#End Region

#Region "Liedjes"
    Private Function valideerLiedDuur(ByVal duurLied As String, ByRef errorMessage As String) As Boolean
        'check not empty
        If txtDuurLied.Text.Length = 0 Then
            errorMessage = "Duur lied moet ingevuld worden"
            Return False

        End If
        If Not checkMaxChar(txtDuurLied.Text, 8) Then
            Return False
        End If

        If duurLied.IndexOf(":") > -1 Then
            errorMessage = "Duur lied moet geldig genoteerd zijn" + ControlChars.Cr + _
                     "Bijvoorbeeld '03:34' "
            Return True
        End If


        errorMessage = "Duur lied moet geldig genoteerd zijn" + ControlChars.Cr + _
          "Bijvoorbeeld '03:34' "
        Return False
    End Function
    Private Sub txtDuurLied_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtDuurLied.Validating
        Dim errorMsg As String
        If Not valideerLiedDuur(txtDuurLied.Text, errorMsg) Then
            ' Cancel the event and select the text to be corrected by the user.
            e.Cancel = True
            txtDuurLied.Select(0, txtDuurLied.Text.Length)

            ' Set the ErrorProvider error with the text to display. 
            Me.ErrorProvider1.SetError(txtDuurLied, errorMsg)
        End If

    End Sub

    Private Sub txtDuurLied_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtDuurLied.Validated
        ErrorProvider1.SetError(txtDuurLied, "")
    End Sub
#End Region

#Region "productiejaar"
    Private Function valideerProductieJaar(ByVal sProductieJaar As String, ByRef errorMessage As String) As Boolean
        ' Confirm there is text in the control.
        If txtWijzigAlbumProductieJaar.Text.Length = 0 Then
            errorMessage = "U moet een jaartal invullen."
            Return False

        End If

        If txtWijzigAlbumProductieJaar.Text.Length = 0 Then
            errorMessage = "U moet een jaartal invullen."
            Return False

        End If

        ' Confirm that there is an "@" and a "." in the e-mail address, and in the correct order.
        If IsNumeric(txtWijzigAlbumProductieJaar.Text) And txtWijzigAlbumProductieJaar.Text.Length = 4 Then

            Return True

        Else
            errorMessage = "Productiejaar moet een jaartal zijn."
        End If



        Return False
    End Function
    Private Sub txtWijzigAlbumProductieJaar_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtWijzigAlbumProductieJaar.Validating
        Dim errorMsg As String
        If Not valideerProductieJaar(txtWijzigAlbumProductieJaar.Text, errorMsg) Then
            ' Cancel the event and select the text to be corrected by the user.
            e.Cancel = True
            txtWijzigAlbumProductieJaar.Select(0, txtWijzigAlbumProductieJaar.Text.Length)

            ' Set the ErrorProvider error with the text to display. 
            Me.ErrorProvider1.SetError(txtWijzigAlbumProductieJaar, errorMsg)
        End If
    End Sub

    Private Sub txtWijzigAlbumProductieJaar_Validated(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtWijzigAlbumProductieJaar.Validated
        ErrorProvider1.SetError(txtWijzigAlbumProductieJaar, "")
    End Sub
#End Region

#End Region

#Region "opvullen"

    Private Sub BindGenreComboBox(ByVal oAlbum As clsAlbum)
        Dim arlGenres As ArrayList
        arlGenres = clsGenreDA.GetGenres

        cboWijzigAlbumGenre.DataSource = arlGenres
        Dim oGenre As clsGenre
        oGenre = clsGenreDA.GetGenreByID(oAlbum.GenreID).Item(0)
        cboWijzigAlbumGenre.Text = oGenre.GenreNaam

    End Sub

    Private Sub BindLocatieComboBox(ByVal sLocatieID As String)
        Dim arlAlbumLocaties As ArrayList

        arlAlbumLocaties = clsLocatieDA.GetLocaties

        cboWijzigAlbumLocatie.DataSource = arlAlbumLocaties
        Dim oLocatie As clsLocatie
        oLocatie = clsLocatieDA.GetLocatieByID(sLocatieID).Item(0)
        cboWijzigAlbumLocatie.Text = oLocatie.ToString

    End Sub

    Private Sub BindGroepenCombobox()
        Dim arlGroepen As ArrayList
        'cboGroepNaam.Items.Clear()
        arlGroepen = clsGroepDA.GetGroepen
        cboGroepNaam.DataSource = arlGroepen

      

    End Sub
    Private Sub BindLiedjesCombobox()
        Dim arlLiedjes As ArrayList
        'cboGroepNaam.Items.Clear()
        arlLiedjes = clsLiedDA.GetLiedjes

        cboLiedNaam.DataSource = arlLiedjes
        cboLiedNaam.Text = ""
        txtDuurLied.Text = ""
    End Sub

    Private Sub GroepOphalen()
        Dim arlUitvoeringen As ArrayList
        arlUitvoeringen = clsUitvoeringDA.GetUitvoeringenByAlbumID(txtWijzigId.Text)

        Dim oUitvoering As clsUitvoering
        If arlUitvoeringen.Count() = 0 Then
            MsgBox("Dit is een album zonder liedjes.  Dit kan alleen gebeuren door een album in te voeren in de database", MsgBoxStyle.OKCancel, "Fout")
        Else
            oUitvoering = arlUitvoeringen.Item(0)
            Try
                Dim oGroep As clsGroep
                oGroep = clsGroepDA.GetGroepByID(oUitvoering.GroepID).Item(0)
                cboGroepNaam.Text = oGroep.GroepNaam
            Catch ex As Exception
                MsgBox(ex.ToString, MsgBoxStyle.OKOnly, "Fout bij ophalen groep")
            End Try
        End If

    End Sub


    Private Sub uitvoeringenOphalen(ByVal sAlbumID As String)

        Try
            Dim arlUitvoeringen As ArrayList
            arlUitvoeringen = clsUitvoeringDA.GetUitvoeringenByAlbumID(sAlbumID)

            lvwLiedjes.Items.Clear()

            For Each oUitvoering As clsUitvoering In arlUitvoeringen

                Dim oLitm As ListViewItem
                oLitm = New ListViewItem
                Dim oLied As clsLied

                oLied = clsLiedDA.GetLiedByID(oUitvoering.LiedID)
                oLitm.Text = oLied.LiedNaam
                oLitm.SubItems.Add(oLied.LiedDuur)
                oLitm.SubItems.Add(oLied.LiedID)
                oLitm.SubItems.Add(oUitvoering.UitvoeringID)

                'lied object in listview liedjes steken

                lvwLiedjes.Items.Add(oLitm)




            Next



        Catch ex As Exception
            MsgBox(ex.ToString, MsgBoxStyle.OKOnly, "Fout bij Liedjes listview opvullen")
        End Try


    End Sub



    Private Sub opVullen(ByVal oAlbum As clsAlbum)
        txtWijzigId.Text = oAlbum.AlbumID
        BindGenreComboBox(oAlbum)
        BindLocatieComboBox(oAlbum.LocatieID)
        BindGroepenCombobox()
        GroepOphalen()

        BindLiedjesCombobox()

        txtWijzigAlbumNaam.Text = oAlbum.AlbumNaam
        txtWijzigAlbumProductieJaar.Text = oAlbum.ProductieJaar
        txtWijzigAlbumProductieHuis.Text = oAlbum.Productiehuis

        uitvoeringenOphalen(oAlbum.AlbumID)
    End Sub

#End Region


    Private Sub voerUitOpDatabase()

        Try

            groepUitvoerenOpDatabase()

            albumUitvoerenOpDatabase()

            mbUitgevoerd = True

        Catch ex As Exception

            Debug.WriteLine(ex)
            MsgBox(ex.ToString, MsgBoxStyle.OKOnly, "Fout bij uitvoeren data op database.")

        End Try

    End Sub


End Class
