private void btnRemover_Click(object sender, EventArgs e)
        {
            Modelo.SGTTContexto   contexto       = new Modelo.SGTTContexto();
            Modelo.EtapaCategoria etapacategoria = new Modelo.EtapaCategoria();
            if (lblId.Text == "")
            {
                lblId.Text = "0";  //só foi feito para não dar erro qdo campo em branco.
            }
            int id = Convert.ToInt32(lblId.Text);

            if (id > 0)
            {
                etapacategoria = contexto.EtapaCategoria.Find(id);

                DialogResult result; // confirmação da remoção
                result = MessageBox.Show("Confirma remoção da Etapa da Categoria?", "Remover", MessageBoxButtons.YesNo,
                                         MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                if (result == DialogResult.Yes)
                {
                    contexto.EtapaCategoria.Remove(etapacategoria);
                    contexto.SaveChanges();          // atualiza o banco de dados
                    MessageBox.Show("Competidor removido com sucesso!", "Remover", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
            }
            else
            {
                MessageBox.Show("Não Há Registo para Remoção!!!", "Remover", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }

            dgvEtapaCategoria.DataSource = "";
            dgvEtapaCategoria.DataSource = contexto.EtapaCategoria.ToList();
            limparCampos();
            habilitaCampos(false);
        }
        private void btnGravar_Click(object sender, EventArgs e)
        {
            Modelo.SGTTContexto contexto = new Modelo.SGTTContexto();
            DialogResult        result;

            result = MessageBox.Show("Confirma Gravação?", "Salvar", MessageBoxButtons.YesNo,
                                     MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
            if (result == DialogResult.Yes)
            {
                int id = Convert.ToInt32(lblId.Text);
                Modelo.EtapaCategoria etapacategoria = new Modelo.EtapaCategoria();

                if (id != -1)
                {
                    etapacategoria = contexto.EtapaCategoria.Find(id);
                }

                //popular o objeto com os valores do formulário
                etapacategoria.id          = id;
                etapacategoria.etapaID     = Convert.ToInt32(cmbEtapa.SelectedValue);
                etapacategoria.categoriaID = Convert.ToInt32(cmbCategoria.SelectedValue);
                etapacategoria.numdias     = Convert.ToInt32(txtDias.Text);

                if (etapacategoria.id == -1) // se for inserir
                {
                    contexto.EtapaCategoria.Add(etapacategoria);
                }
                else  // se for editar
                {
                    contexto.Entry(etapacategoria).State = EntityState.Modified;
                }

                contexto.SaveChanges();
                MessageBox.Show("Dados gravados com sucesso", "Salvar", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                MessageBox.Show("Dados não gravado", "Salvar", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            limparCampos();
            habilitaCampos(false);
            dgvEtapaCategoria.DataSource = "";
            dgvEtapaCategoria.DataSource = contexto.EtapaCategoria.ToList();
        }
        private void btnFiltrar_Click(object sender, EventArgs e)
        {
            Modelo.SGTTContexto          contexto           = new Modelo.SGTTContexto();
            List <Modelo.EtapaCategoria> lstEtapasCategoria = new List <Modelo.EtapaCategoria>();

            if (rdbId.Checked)
            {
                int id = Convert.ToInt32(txtFiltrar.Text);
                Modelo.EtapaCategoria etapacategoria = new Modelo.EtapaCategoria();
                etapacategoria = contexto.EtapaCategoria.Find(id);
                lstEtapasCategoria.Add(etapacategoria);
            }
            else if (rdbEtapa.Checked)
            {
                int etapa = Convert.ToInt32(txtFiltrar.Text);
                Modelo.EtapaCategoria etapacategoria = new Modelo.EtapaCategoria();
                etapacategoria = contexto.EtapaCategoria.Find(etapacategoria);

                lstEtapasCategoria.Add(etapacategoria);
            }

            dgvEtapaCategoria.DataSource = "";
            dgvEtapaCategoria.DataSource = lstEtapasCategoria;
        }