private void btnEditar_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         if (_repositorio.LeerCliente().Count == 0)
         {
             MessageBox.Show("Actualmente no tiene clientes disponibles", "Clientes-Vacio", MessageBoxButton.OK, MessageBoxImage.Error);
         }
         else
         {
             if (dtgClientes.SelectedItem != null)
             {
                 COMMON.Cliente c = dtgClientes.SelectedItem as COMMON.Cliente;
                 HabilitarCajas(true);
                 txbNombre.Text    = c.Nombre;
                 txbDireccion.Text = c.Direccion;
                 txbRFC.Text       = c.Rfc;
                 txbTelefono.Text  = c.Telefono;
                 txbemail.Text     = c.Correo;
                 HabilitarBotones(false);
                 esNuevo = false;
             }
             else
             {
                 MessageBox.Show("No se ha seleccionado un cliente aún", "Cliente", MessageBoxButton.OK, MessageBoxImage.Question);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Farmacia", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
        private void btnGuardar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(txbNombre.Text) || string.IsNullOrEmpty(txbDireccion.Text) || string.IsNullOrEmpty(txbRFC.Text) || string.IsNullOrEmpty(txbTelefono.Text) || string.IsNullOrEmpty(txbemail.Text))
                {
                    MessageBox.Show("Faltan datos", "Error", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                    return;
                }

                if (esNuevo)
                {
                    COMMON.Cliente _c = new COMMON.Cliente()
                    {
                        Nombre    = txbNombre.Text,
                        Direccion = txbDireccion.Text,
                        Rfc       = txbRFC.Text,
                        Telefono  = txbTelefono.Text,
                        Correo    = txbemail.Text
                    };
                    if (_repositorio.Crear(_c))
                    {
                        ActualizarTabla();
                        MessageBox.Show($"{_c.Nombre} agregado con exito", "Cliente", MessageBoxButton.OK, MessageBoxImage.Information);
                        HabilitarBotones(true);
                        HabilitarCajas(false);
                    }
                    else
                    {
                        MessageBox.Show("Error al intentar guardar", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
                else
                {
                    COMMON.Cliente original = dtgClientes.SelectedItem as COMMON.Cliente;
                    COMMON.Cliente c        = new COMMON.Cliente();
                    c.Nombre    = txbNombre.Text;
                    c.Direccion = txbDireccion.Text;
                    c.Rfc       = txbRFC.Text;
                    c.Telefono  = txbTelefono.Text;
                    c.Correo    = txbemail.Text;
                    if (_repositorio.Actualizar(original, c))
                    {
                        HabilitarBotones(true);
                        HabilitarCajas(false);
                        ActualizarTabla();
                        MessageBox.Show($"Los datos de {c.Nombre} han sido actualizados", "Compas", MessageBoxButton.OK, MessageBoxImage.Information);
                    }
                    else
                    {
                        MessageBox.Show($"No se ha podido modificar a { c.Nombre}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
            }
            catch (Exception)
            {
                MessageBox.Show($"Error al intentar guardar a {txbNombre}", "Atención", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            }
        }
 private void btnEliminar_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         if (_repositorio.LeerCliente().Count == 0)
         {
             MessageBox.Show("No hay Clientes que eliminar", "Clientes", MessageBoxButton.OK, MessageBoxImage.Exclamation);
         }
         else
         {
             if (dtgClientes.SelectedItem != null)
             {
                 COMMON.Cliente c = dtgClientes.SelectedItem as COMMON.Cliente;
                 if (MessageBox.Show("Realmente deseas eliminar a " + c.Nombre + "de tus Clientes?", "Eliminar?", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
                 {
                     if (_repositorio.Eliminar(c))
                     {
                         ActualizarTabla();
                         MessageBox.Show("Este Cliente ha sido Eliminado", "Cliente", MessageBoxButton.OK, MessageBoxImage.Information);
                     }
                     else
                     {
                         MessageBox.Show($"Error al eliminar a {c.Nombre} de tus Clientes", "Clientes-Error", MessageBoxButton.OK, MessageBoxImage.Error);
                     }
                 }
             }
             else
             {
                 MessageBox.Show("Selecciona al Cliente que quieres Eliminar", "Atención", MessageBoxButton.OK, MessageBoxImage.Exclamation);
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Farmacia", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }