/* ********************************************************************************
        ** Menü Datei Eventhandler
        ** ******************************************************************************** */
        /// <summary>
        /// Behandelt das <c>Click</c>-Ereignis von Menüleiste -> Datei -> Öffnen.
        /// </summary>
        /// <param name="sender">Die Quelle des Ereignisses.</param>
        /// <param name="e">Die <see cref="EventArgs"/> Instanz, die die Ereignisdaten enthält.</param>
        private void menüDateiÖffnen_Click(object sender, EventArgs e)
        {
            OpenFileDialog dateiÖffnenDialog = new OpenFileDialog();
            dateiÖffnenDialog.Title = "Datenbank öffnen";
            dateiÖffnenDialog.Filter = "Microsoft Access Database (*.mdb)|*.mdb";
            dateiÖffnenDialog.RestoreDirectory = true;
            dateiÖffnenDialog.InitialDirectory = Path.GetDirectoryName(Application.ExecutablePath);

            if (dateiÖffnenDialog.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    _hauptfensterDatenbank = new HauptfensterDatenbank(dateiÖffnenDialog.FileName, _datenraster, _datenfilter);

                    _hauptfensterDatenbank.DatenrasterLeeren();
                    _hauptfensterDatenbank.DatenfilterLeeren();

                    _hauptfensterDatenbank.DatenrasterFüllen();
                    _hauptfensterDatenbank.DatenfilterFüllen();

                    DatenbankoptionenAktivieren();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(
                        "Fehler beim Öffnen der Datenbank" + (string.IsNullOrEmpty(dateiÖffnenDialog.FileName) ? "" : " '" + dateiÖffnenDialog.FileName + "'") + ": " + ex.Message,
                        "Fehler beim Öffnen der Datenbank",
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error
                        );
                }
            }
        }
        /* ********************************************************************************
        ** Konstruktor
        ** ******************************************************************************** */
        /// <summary>
        /// Initialisiert eine neue Instanz von <see cref="HinzufügenFenster"/>.
        /// </summary>
        /// <param name="istFirma">Ist <c>true</c>, wenn eine Firma hinzugefügt werden soll.</param>
        /// <param name="hauptfensterDatenbank">Die Instanz von HauptfensterDatenbank, um auf die Methode <see cref="HauptfensterDatenbank.KundeZufügen(string, string, string, bool, string, string, string, string)"/> zugreifen zu können.</param>
        /// <exception cref="System.ArgumentNullException"><c>HauptfensterDatenbank</c> ist null.</exception>
        public HinzufügenFenster(bool istFirma, HauptfensterDatenbank hauptfensterDatenbank)
        {
            if (hauptfensterDatenbank == null)
                throw new ArgumentNullException("HauptfensterDatenbank darf nicht null sein");
            _hauptfensterDatenbank = hauptfensterDatenbank;

            _istFirma = istFirma;

            ElementeInitialisieren();
        }