private void btnRemover_Click(object sender, EventArgs e)
        {
            Modelo.SGTTContexto contexto = new Modelo.SGTTContexto();
            Modelo.Etapa        etapa    = new Modelo.Etapa();
            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)
            {
                etapa = contexto.Etapa.Find(id);

                DialogResult result; // confirmação da remoção
                result = MessageBox.Show("Confirma remoção da Etapa?", "Remover", MessageBoxButtons.YesNo,
                                         MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                if (result == DialogResult.Yes)
                {
                    contexto.Etapa.Remove(etapa);
                    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);
            }

            dgvEtapa.DataSource = "";
            dgvEtapa.DataSource = contexto.Etapa.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.Etapa etapa = new Modelo.Etapa();

                if (id != -1)
                {
                    etapa = contexto.Etapa.Find(id);
                }

                //popular o objeto com os valores do formulário
                etapa.id           = id;
                etapa.campeonatoID = Convert.ToInt32(cmbCampeonato.SelectedValue);
                etapa.numero       = Convert.ToInt32(txtNumero.Text);
                etapa.dataInicio   = Convert.ToDateTime(dtpInicio.Text);
                etapa.dataFim      = Convert.ToDateTime(dtpFim.Text);
                etapa.descricao    = txtDescricao.Text;
                etapa.cidadeID     = Convert.ToInt32(cmbCidade.SelectedValue);

                etapa.contratante   = Convert.ToString(txtContratante.Text);
                etapa.premio        = Convert.ToSingle(txtPremio.Text);
                etapa.qtdePremiados = Convert.ToInt32(txtPremiados.Text);

                if (etapa.id == -1) // se for inserir
                {
                    contexto.Etapa.Add(etapa);
                }
                else  // se for editar
                {
                    contexto.Entry(etapa).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);
            dgvEtapa.DataSource = "";
            dgvEtapa.DataSource = contexto.Etapa.ToList();
        }
        private void rdbTodos_CheckedChanged(object sender, EventArgs e)
        {
            lblMensagem.Visible = false;
            txtFiltrar.Visible  = false;
            btnFiltrar.Visible  = false;

            Modelo.SGTTContexto contexto  = new Modelo.SGTTContexto();
            List <Modelo.Etapa> lstEtapas = new List <Modelo.Etapa>();

            lstEtapas = contexto.Etapa.ToList();

            dgvEtapa.DataSource = "";
            dgvEtapa.DataSource = lstEtapas;
        }
        private void frmEtapa_Load(object sender, EventArgs e)
        {
            Modelo.SGTTContexto contexto = new Modelo.SGTTContexto();
            ToolModeladas.dgvTransformation(dgvEtapa);
            dgvEtapa.DataSource = "";
            dgvEtapa.DataSource = contexto.Etapa.ToList();

            cmbCampeonato.DisplayMember = "descricao";
            cmbCampeonato.ValueMember   = "id";
            cmbCampeonato.DataSource    = contexto.Campeonato.ToList();

            cmbCidade.DisplayMember = "nome";
            cmbCidade.ValueMember   = "id";
            cmbCidade.DataSource    = contexto.Cidade.ToList();

            habilitaCampos(false);
        }
        private void frmEtapaCategoria_Load(object sender, EventArgs e)
        {
            Modelo.SGTTContexto contexto = new Modelo.SGTTContexto();
            dgvEtapaCategoria.DataSource = "";
            ToolModeladas.dgvTransformation(dgvEtapaCategoria);
            dgvEtapaCategoria.DataSource = contexto.EtapaCategoria.ToList();

            cmbEtapa.DisplayMember = "id";
            cmbEtapa.SelectedValue = "etapa";
            cmbEtapa.DataSource    = contexto.Etapa.ToList();

            cmbCategoria.DisplayMember = "id";
            cmbCategoria.SelectedValue = "categoria";
            cmbCategoria.DataSource    = contexto.Categoria.ToList();

            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.Etapa> lstEtapas = new List <Modelo.Etapa>();

            if (rdbId.Checked)
            {
                int          id    = Convert.ToInt32(txtFiltrar.Text);
                Modelo.Etapa etapa = new Modelo.Etapa();
                etapa = contexto.Etapa.Find(id);
                lstEtapas.Add(etapa);
            }
            else if (rdbPremio.Checked)
            {
                int          premio = Convert.ToInt32(txtFiltrar.Text);
                Modelo.Etapa etapa  = new Modelo.Etapa();
                etapa = contexto.Etapa.Find(premio);
                lstEtapas.Add(etapa);
            }

            dgvEtapa.DataSource = "";
            dgvEtapa.DataSource = lstEtapas;
        }
        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;
        }