Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Gilnet

[Resolvido] Coluna gridview

Recommended Posts

Olá,

 

Preciso exibir dados de uma coluna do gridview em um textbox mas tá dando o seguinte erro:

Index was out of range. Must be non-negative and less than the size of the collection.

Parameter name: index

 

Vejam o código:

grdAdmissaoDemissao.DataSource = pAdmissaoDemissao.exibirAdmissaoDemissao(Opcao, idAdmissaoDemissao, idFunc, TipoContrato, PrazoVencto, DataAdmissao, DataDemissao);

grdAdmissaoDemissao.DataBind();

DataAdmissao, DataDemissao);

if (grdAdmissaoDemissao.Items.Count > 0)

{

DataAdmissao = grdAdmissaoDemissao.Columns[2].ToString(); - o erro está quando chega aqui.

TipoContrato = grdAdmissaoDemissao.Columns[4].ToString();

PrazoVencto = Convert.ToInt32(grdAdmissaoDemissao.Columns[5].ToString());

}

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo,

 

A mensagem parece ser que não existe a coluna 2 do grdAdmissaoDemissao.

Porém, você não enviou o trecho de declaração da variável DataAdmissao. Ela é DateTime ou string?

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Provavelmente a coluna

grdAdmissaoDemissao.Columns[2].ToString()

está vindo com valor vazio, ou não existe.

 

Olá,

 

Já verifiquei essa possíbilidade o gridview está sendo preenchido. A variável DataAdmissao é do tipo string.

 

Nota: Um detalhe esse grid é criado dinamicamente.

 

DataGrid grdAdmissaoDemissao = new DataGrid();

 

Obrigado.

 

Resolvido.

 

Encontrei um tópico no msdn que resolveu meu problema. Segue a solução.

 

idFunc = Convert.ToInt32(cboFuncionario.SelectedValue.ToString());

Opcao = 4;

if (pAdmissaoDemissao.exibirAdmissaoDemissao(Opcao, idAdmissaoDemissao, idFunc, TipoContrato, PrazoVencto, DataAdmissao, DataDemissao).Rows.Count > 0)

{

DataAdmissao = pAdmissaoDemissao.exibirAdmissaoDemissao(Opcao, idAdmissaoDemissao, idFunc, TipoContrato, PrazoVencto, DataAdmissao, DataDemissao).Rows[0]["DataAdmissao"].ToString();

TipoContrato = pAdmissaoDemissao.exibirAdmissaoDemissao(Opcao, idAdmissaoDemissao, idFunc, TipoContrato, PrazoVencto, DataAdmissao, DataDemissao).Rows[0]["TipoContrato"].ToString();

PrazoVencto = Convert.ToInt32(pAdmissaoDemissao.exibirAdmissaoDemissao(Opcao, idAdmissaoDemissao, idFunc, TipoContrato, PrazoVencto, DataAdmissao, DataDemissao).Rows[0]["PrazoVencto"].ToString());

}

 

lblMSG.Text = DataAdmissao;

 

segue abaixo o link. Resposta do S4ndr0

 

Obrigado.

 

http://social.msdn.microsoft.com/forums/pt-br/aspnetpt/thread/779BA7FB-1578-4DC1-B782-9CD61D847125

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.