Ir para conteúdo

POWERED BY:

Arquivado

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

Titicolas

GridView + Pop Up

Recommended Posts

Olá pessoal, tenho um gridview ligado a um banco de dados acess da sgeuinte maneira:

 

NOME | EMAIL | TELEFONE | EDITAR

 

e o GridView está linkado com o banco através de um DataReader onde eu dou um

 

gridView.DataSource = DataReader
gridView.DataBind()

dai eu gostaria que aquela ultima coluna tivesse um link EDITAR

onde a pessoa clicava no link e ele abria uma pop com o link assim: "'Default.aspx?acao=editar&codigo=X" sendo X o código do registro.

 

Ai que tá, o pop up eu ja consegui fazer usando o seguinte código:

 

Protected Sub dataGrid_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles dataGrid.RowDataBound
		e.Row.Cells(3).Attributes.Add("onClick", "AbrePagina('Default.aspx?acao=editar&codigo=X')")
End Sub

o único porém dessa história é que não estou conseguindo atribuir o valor do X à string usada para abrir a pop up

 

como eu faria isso? o que que eu preciso colocar naquele X?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Titicolas não sei se server, mas eu indicaria de outra forma, crie um campo na sua grid do tipo HyperlinkField, na propriedade DataNavigateUrlFields coloque o seu campo Código, lembrando que este campo tem que estar no seu select, na propriedade DataNavigateUrlFormatString coloque: Default.aspx?acao=editar&codigo={0}, para abrir em uma nova janela mude a propriedade target para _blank.

 

Falows

Compartilhar este post


Link para o post
Compartilhar em outros sites

outra possível solução, tenta isso:

e.Row.Cells(3).Attributes.Add("onClick", "AbrePagina('Default.aspx?acao=editar&codigo=" &  e.Row.Cells[0].Text & "')")
ou então isso:

System.Data.DataRowView vRow = (System.Data.DataRowView)e.Row.DataItem; 
e.Row.Cells(3).Attributes.Add("onClick", "AbrePagina('Default.aspx?acao=editar&codigo=" &  vRow["SeuCampo"] & "')")

 

qq. coisa valida se o que esta atribuindo é linha, cabeçalho ou rodapé, tipo:

if (e.Row.RowType == DataControlRowType.DataRow)

 

t+

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.