private void OpenDatabase()
        {
            // Preguntamos si se quiere salvar lo actual.
            SaveDatabase();

            // Abrimos la base de datos.
            string file;

            if (DatabaseOpenDialog.Show(mainWindow, out file)
                == ResponseType.Ok)
            {
                // El usuario acepta la apertura del archivo.
                MathTextDatabase database = MathTextDatabase.Load(file);
                if (database == null)
                {
                    // No se abrio un archivo de base de datos, informamos.
                    OkDialog.Show(this.mainWindow,
                                  MessageType.Warning,
                                  "El archivo «{0}» no contiene una base de datos " +
                                  "correcta, y no se pudo abrir.",
                                  file);

                    return;
                }

                SetDatabase(database);

                SetTitle(file);
                databaseModified = false;

                LogLine("¡Base de datos «" + file + "» cargada correctamente!");
            }
        }
        /// <summary>
        /// Maneja el evento producido al pulsar el boton de añadir
        /// una base de datos.
        /// </summary>
        /// <param name="sender">
        /// A <see cref="System.Object"/>
        /// </param>
        /// <param name="args">
        /// A <see cref="EventArgs"/>
        /// </param>
        private void OnAddBtnClicked(object sender, EventArgs args)
        {
            string filename;

            if (DatabaseOpenDialog.Show(this.databaseManagerDialog, out filename)
                == ResponseType.Ok)
            {
                // Añadimos la base de datos a la lista.
                AddDatabase(filename);
            }
        }