private void CarregaTelaEdit(Paciente paciente)
        {
            txtCPF.Text = paciente.CPF;
            txtEndereco.Text = paciente.Endereco;
            txtNumero.Text = paciente.Numero;
            txtCEP.Text = paciente.Cep;
            txtUf.Text = paciente.Uf;
            txtCidade.Text = paciente.Cidade;
            txtTelefone.Text = paciente.Telefone;
            txtCelular.Text = paciente.TelefoneCelular;
            txtNome.Text = paciente.Nome;

            txtCPF.Enabled = false;
        }
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                Paciente paciente;
                var repP = new Fiap.Persistencia.Hospital.DAO.Repositorio<Paciente>();
                if (txtCPF.IsEmpty())
                {
                    MessageBox.Show("Por favor digite um email", "Cadastro Médico", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtCPF.Focus();
                    return;
                }
                else
                {
                    if (!Valida.IsCpf(txtCPF.Text))
                    {
                        MessageBox.Show("Por favor digite um CPF válido", "Cadastro Médico", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        txtCPF.Focus();
                        return;
                    }
                }
                paciente = repP.Buscar(txtCPF.Text);

                if (paciente == null)
                {
                    paciente = new Paciente();

                    paciente.CPF = txtCPF.Text;

                    if (txtNome.IsEmpty())
                    {
                        MessageBox.Show("Por favor digite um Nome", "Cadastro Médico", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        txtNome.Focus();
                        return;
                    }
                    else
                        paciente.Nome = txtNome.Text;

                    paciente.Endereco = txtEndereco.Text;
                    paciente.Numero = txtNumero.Text;
                    paciente.Cep = txtCEP.Text;
                    paciente.Uf = txtUf.Text;
                    paciente.Cidade = txtCidade.Text;
                    paciente.Telefone = txtTelefone.Text;
                    paciente.TelefoneCelular = txtCelular.Text;
                    paciente.DatInc = DateTime.Now;

                    repP.Adicionar(paciente);
                }
                else
                {
                    if (txtNome.IsEmpty())
                    {
                        MessageBox.Show("Por favor digite um Nome", "Cadastro Médico", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        txtNome.Focus();
                        return;
                    }
                    else
                        paciente.Nome = txtNome.Text;

                    paciente.Endereco = txtEndereco.Text;
                    paciente.Numero = txtNumero.Text;
                    paciente.Cep = txtCEP.Text;
                    paciente.Uf = txtUf.Text;
                    paciente.Cidade = txtCidade.Text;
                    paciente.Telefone = txtTelefone.Text;
                    paciente.TelefoneCelular = txtCelular.Text;
                }
                repP.Salvar();
                if (gdvPaciente.SelectedRows.Count == 0 && txtCPF.Enabled)
                {
                    MessageBox.Show(string.Format("Paciente {0} adicionado com sucesso", paciente.Nome));

                    gdvPaciente.DataSource = repP.Listar(x => x.dataExclusao == null)
                                                 .OrderByDescending(x => x.DatInc)
                                                 .Take(10)
                                                 .Select(x => new { x.CPF, x.Nome, x.Cep, x.Uf, x.Cidade, x.Endereco, x.Telefone })
                                                 .ToList();
                }
                else
                {
                    MessageBox.Show(string.Format("Médico {0} alterado com sucesso", paciente.Nome));
                    btnConsulta_Click(sender, e);
                }

                var txts = this.GetTodosControles(typeof(TextBox));

                foreach (var item in txts)
                {
                    item.Text = "";
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Erro ao Salvar", "Cadastro Paciente", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }