Ir para conteúdo

Arquivado

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

DaniloTec

[Resolvido] Adicionar controles no GridView

Recommended Posts

Boa tarde gente.

Estou montando um grid com os botões (alterar, excluir e cancelar), até aí tranquilo. Ao clicar em alterar, a linha do grid se transforma em campos editáveis e até tmb tudo bem.

Pesquisei vários sites e consegui colocar um dropdownlist em uma das colunas, mas isso foi feito em modo Wizart, ou seja, ele coloca os códigos dentro da página aspx.

Gostaria de saber se é possível fazer isso via código? Não só o dropdown mas tmb outros elementos como checkbox, por exemplo.

Eu tentei criar um controle dentro do evento RowEditing e adiciona-lo na celula correta, mas não deu cero.

Vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, com comecei e fiz um monte de coisa que ainda não deu certo. :P

Fiz o seguinte teste no método RowEditing:

protected void gvPergunta_RowEditing(object sender, GridViewEditEventArgs e)
	{
		gvPergunta.EditIndex = e.NewEditIndex;
		DropDownList ddl = new DropDownList();
		ddl.ID = "ddl";
		ddl.Items.Add("Teste");
		gvPergunta.Rows[e.NewEditIndex].Cells[5].Controls.Add(ddl);
		BindData();
	}
Não dá erro, mas tmb nada acontece.

Este mesmo controle funciona quando colocado no método RowDataBound.

Abrazz!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Descobri.

É necessário fazer 2 coisas:

1 - Colocar o método BindData() antes da adição do controle;

protected void gvPergunta_RowEditing(object sender, GridViewEditEventArgs e)
	{
		gvPergunta.EditIndex = e.NewEditIndex;
		BindData();
		DropDownList ddl = new DropDownList();
		ddl.ID = "ddl";
		ddl.Items.Add("Teste");
		gvPergunta.Rows[e.NewEditIndex].Cells[5].Controls.Add(ddl);
	}

2 - Em "Editing Coluns" do grid, transforme o campo BoundField em um Template Field "Convert this field into a TemplateField". Depois exclua o textbox que ele coloca como padão.

 

Fiz isso e funcionou.

 

Vlw gente!!!

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.