pegar linha corrente (nova linha) datagridview

08/04/2010

0

Boa noite,   Estou trazendo dados do bd em um datagridview, ele traz n linhas , quando clico na ultima linha ele automaticamente cria uma nova linha para que novo registro seja digitado entao digito o texto da primeira celula, ai vou para segunda celula e ai faço um teste tentando pegar oq foi digitado na celula anterior ( ou seja estou na linha nova que foi gerada e ainda estou digitando todos os campos ) .   Como faço para pegar o conteudo que acabei de digitar na celula anterior ??? eu ja tentei usar o currentrow.cell e ele traz como se a celula fosse vazia. alguem teria alguma explicacao ou alguma ajuda ???   abç a todos...
Paulo Costa

Paulo Costa

Responder

Posts

09/04/2010

Netasper

Faço desta forma:   namespace DESKTOP
{
    public partial class Categoria : Form
    {
        private List<Categoria> c = new List<Categoria>();
        private List<Departamento> g = new List<Departamento>();         public NEGOCIO.Perfil perfil;
        public NEGOCIO.Categoria categoria;
        public NEGOCIO.Departamento departamento;         private int linhaAtual = -1;         private string codCategoria;
        private string codDepartamento;
        private string dscCategoria;
        private string dscDepartamento;
        private string indAtivo;           private void obtemDadosGrid()
        {
            codCategoria = dgvDados[0, linhaAtual].Value.ToString();
            codDepartamento = dgvDados[1, linhaAtual].Value.ToString();
            dscCategoria = dgvDados[2, linhaAtual].Value.ToString();
            dscDepartamento = dgvDados[3, linhaAtual].Value.ToString();
            indAtivo = dgvDados[4, linhaAtual].Value.ToString();             tbCodigo.Text = codCategoria;
            tbDescricao.Text = dscCategoria;
            cmDepartamentoEdicao.SelectedIndex = cmDepartamentoEdicao.FindString(dscDepartamento);
            cbAtivoEdicao.Checked = (indAtivo == "S");             btExcluir.Enabled = btAlterar.Enabled = true;
        }
        private void dgvDados_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            linhaAtual = int.Parse(e.RowIndex.ToString());
           
            if (linhaAtual >= 0)
                obtemDadosGrid();
        }     }
}
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar