none
Erro gridview RRS feed

  • Pergunta

  • Quando eu clico na minha gridview era pras linhas que ela está armazenada os dados irem para seus textx box

            private void dgvAgendamento_MouseDoubleClick(object sender, MouseEventArgs e)
            {
                if (dgvAgendamento.SelectedRows.Count > 0)
                {
                    lblid.Text = dgvAgendamento.SelectedRows[0].Cells[0].Value.ToString();
                    txtCliente.Text = dgvAgendamento.SelectedRows[0].Cells[1].Value.ToString();
                    maskData.Text = dgvAgendamento.SelectedRows[0].Cells[2].Value.ToString();
                }
            }

    Esse é o evento.

    Additional information: O índice estava fora do intervalo. Ele deve ser não-negativo e menor que o tamanho da coleção. o erro
    quinta-feira, 7 de julho de 2016 20:08

Respostas

Todas as Respostas

  • Bom dia,

    Bruno, quantas colunas tem seu componente "DataGridView"?

    Att,


    Se a resposta contribuiu com seu aprendizado por favor marque como util, se solucionou seu problema marque como resposta.

    sexta-feira, 8 de julho de 2016 11:53
  • Bruno, dê uma olhada na propriedade SelectionMode do seu DataGridView, e veja se ele está com "FullRowSelect".

    Att.

    Felipe

    sexta-feira, 8 de julho de 2016 13:45
  • Bruno, tenta dessa forma:

            private void dgvAgendamento_MouseDoubleClick(object sender, MouseEventArgs e)
            {
                if (dgvAgendamento.SelectedRows.Count > 0)
                {
    
                    DataGridViewRow linhaClicada = dgvAgendamento.CurrentRow;
    
                    lblid.Text = linhaClicada.Cells["SuaColuna1"].Value.ToString();
                    txtCliente.Text = linhaClicada.Cells["SuaColuna2"].Value.ToString();
                    maskData.Text = linhaClicada.Cells["SuaColuna3"].Value.ToString();
                }
            }


    Diego Almeida Barreto</strong> <br/> <em>System Analyst / Software Developer</em> <br/> <img </p> </div>

    sexta-feira, 8 de julho de 2016 13:55

    1. O evento esta ocorrendo no DoubleClick e não no Click
    2. Você esta utilizando MouseDoubleClick. A menos que precise de informações do Mouse, utilize CellClick que lhe trará informações do DataGridViewCellEventArgs e não do Mouse
    3. Pode ser que o grid não esteja selecionando a linha inteira, nesse caso, configure o SelectionMode para FullRowSelect;
    4. Utilizando SelectedRows[0] Você esta sempre exibindo os dados da linha 0 e não da linha Clicada.
      Para linha clicada, utilize Rows[e.RowIndex].
    5. Deve verificar se a linha é maior que >= 0 ou > -1, pois a linha 0 é a primeira linha do grid e o topo / cabeçalho é a linha -1

    6. Seu código ficaria mais ou menos assim:
    private void dgvAgendamento_CellClick(object sender, MouseEventArgs e)
    {
        dgvAgendamentos.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
        
        if(e.RowIndex > -1)
        {
            lblid.Text = dgvAgendamento.Rows[e.RowIndex].Cells[0].Value.ToString();
            txtCliente.Text = dgvAgendamento.Rows[e.RowIndex].Cells[1].Value.ToString();
            maskData.Text = dgvAgendamento.Rows[e.RowIndex].Cells[2].Value.ToString();
        }
    }



    • Editado DevMaicon domingo, 10 de julho de 2016 07:10
    domingo, 10 de julho de 2016 00:52
  • Consegui arrumar meu amigo, valeu pela ajuda!
    segunda-feira, 11 de julho de 2016 20:38
  • Boa tarde Bruno Brandão da Silva,

    Qual das soluções acima te ajudaram a resolver seu problema?

    Se você mesmo resolveu, poderia nos informar como fez?

    obrigado,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 12 de julho de 2016 17:24
    Moderador
  • Estava com erro no meu botão de busca, esqueci de incluir uma coluna
    terça-feira, 12 de julho de 2016 20:05
  • Obrigado pela resposta Bruno Brandão da Silva.

    Atenciosamente,


    Robson William Silva

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    terça-feira, 12 de julho de 2016 20:23
    Moderador
  • Obrigado meu amigo. Você me ajudou em 2019.
    sexta-feira, 15 de fevereiro de 2019 13:04
  • Por nada
    domingo, 22 de setembro de 2019 04:16