//ingresar clientes
        private void btnIngresarCliente_Click(object sender, RoutedEventArgs e)
        {
            //se cargan los datos del cliente menos tel y mails
            cliente cli = new cliente();
            cli.Nombre = txtNombre.Text;
            cli.Apellido = txtApellido.Text;

            if (!swModificarCliente) //sólo si es ingresar un cliente nuevo y no modificar uno ya existente
            {
                //se comprueba que no haya otro cliente con el mismo nombre
                foreach (cliente clienteGuardado in misClientes)
                {
                    if (clienteGuardado.Nombre.ToLower() == cli.Nombre.ToLower() && clienteGuardado.Apellido.ToLower() == cli.Apellido.ToLower())
                    {
                        MessageBox.Show("Ya hay un cliente ingresado con el nombre " + cli.Nombre + " " + cli.Apellido + ". Por favor ingrese otro nombre distinto.", "Atención");
                        return;
                    }
                }
            }

            cli.Dirección = txtDirección.Text;
            cli.Peluquería = txtPeluquería.Text;
            cli.Localidad = txtLocalidad.Text;
            DateTime fecha = DateTime.Now;
            try
            { fecha = DateTime.Parse(txtFechaNacimiento.Text); } //si hay una fecha válida
            catch
            { MessageBox.Show("No ha escribo bien la fecha de nacimiento. Hay que escribirla dd/mm/aaaa. La d es día, m es mes, y a es año. O sea que son dos números para el día, dos para el mes, y cuatro para el año. Por ejemplo 02/04/1980.", "Error en la fecha"); return; }

            cli.fecha_nacimiento = fecha.ToShortDateString();

            //se guardan los teléfonos
            if (txtTeléfono.Text != "") cli.Teléfonos.Add(new Teléfono(txtTeléfono.Text)); //lo que está en el txt
            foreach (string str in listBoxTeléfonos.Items) //lo que está en la lista
            {
                cli.Teléfonos.Add(new Teléfono(str));
            }
            //se guardan los mails
            if (txtMail.Text != "") cli.Emails.Add(new Mail(txtMail.Text)); //lo que está en el txt mails
            foreach (string str in listBoxMail.Items) //lo que está en la lista
            {
                cli.Emails.Add(new Mail(str));
            }

            pago unPago = new pago();

            if (!swModificarCliente)
            {
                cli.guardar();
                //se muestra el agregado en el grid
                misClientes.Add(cli);
            }
            else
            {
                cliente unCliente = (cliente)dataGridClientes.SelectedItem;
                cli.Id = unCliente.Id;
                cli.actualizar();
                swModificarCliente = false;
                misClientes.Clear();
                misClientes = new ObservableCollection<cliente>(cliente.cargarTodos());
                dataGridClientes.DataContext = misClientes;
            }

            iniciarCampos();
            tabItem2.Focus();
        }