Ir para conteúdo

POWERED BY:

Arquivado

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

SID_SILVA

Pegar o ID de Linha de GridView Populado Manualmente

Recommended Posts

Ola Amigos

 

Ainda me atrapalho com algumas coisas (quer dizer com um monte delas). Tenho um GridView, onde a primeira coluna e um TemplateField com um LinkButton, para excluir o registro, da linha selecionada.

 

Fiz a mesma rotina usando uma chave primaria DataKeyNames o COM, porem nesse caso o GridView, foi populado manualmente e agora estou meio enrolado.

 

Fiz o seguinte:

 

 Protected Sub GrdDocumentos_RowDataBound (sender Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GrdDocumentos.RowDataBound 
      
         Se e.Row.RowType DataControlRowType.DataRow = Então 
             Dim L As LinkButton = DirectCast (e.Row.FindControl (LinkButton1 "), LinkButton) 
             l.Attributes.Add ( "onclick", ( "javascript: return" & "confirm ( 'Deseja Realmente Excluir o documento") & DataBinder.Eval (e.Row.DataItem ", REL_DOCUMENTO") & "?')") 
         End If 
 End Sub 

 

 Protected Sub GrdDocumentos_RowCommand (sender Object, ByVal e As System.Web.UI.WebControls.GridViewComandoEventArgs) Handles GrdDocumentos.RowCommand 
         "Posso excluir aqui no RowCommand 

         Se e.CommandName = "Excluir" Then 
              Relid = GrdDocumentos.SelectedRow.Cells (4). De texto (não funciona desse jeito) 
                
             'GrdDocumentos.SelectedIndex = SelectedGridRow.RowIndex 
             'Record Excluir 
             "Implementar esta em seu próprio país:) 
             DeleteRecordByID (relid) 
         End If 

 End Sub 

 

 

 Private Sub DeleteRecordByID (ByVal RegID As Integer) 

         Dim Sql As String 
         Dim cmd As SqlCommand 

         Dim conexao As SqlConnection 

         conexao = New SqlConnection (ConfigurationManager.ConnectionStrings (folha de ponto "). ConnectionString) 

         Sql = "DELETE FROM REL_PROJETOS" 
         Sql + = "WHERE REL_ID =" & RegID 

         cmd = New SqlCommand (Sql, conexao) 

         Tentar 
             conexao.Open () 

             cmd.Connection = conexao 

             cmd.CommandType = CommandType.Text 

             cmd.CommandText = Sql 

             cmd.ExecuteNonQuery () 
         Catch ex As Exception 
             lblMensagem.Text = "Ocorreu um Erro Durante a Exclusão:" & vbCrLf & ex.Message & vbCrLf '& ex.InnerException.ToString 
         Finalmente 
             conexao.Close () 
             GrdDocumentos.DataBind () 
         End Try 
 End Sub 

 

  Protected Sub GrdDocumentos_SelectedIndexChanging (sender Object, ByVal e As System.EventArgs) Handles GrdDocumentos.SelectedIndexChanged 
         Relid = GrdDocumentos.SelectedRow.Cells (12). Texto 
     End Sub 

 

 

Portanto preciso pegar o ID para poder excluir o registro desejado.

 

Obrigado e um abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara eu tenho um projeto em que uso o evento GridView_RowEditing(object sender,GridViewEditEventArgs e) e pego a linha que foi clicada dessa forma:

protected void GridViewClientes_RowEditing(object sender,GridViewEditEventArgs e)
    {
        //aqui eu pego o valor do campo antes de virar um templadefied
        Label teste =(Label)GridViewClientes.Rows[e.NewEditIndex].Cells[3].FindControl("Label3");
        string uf = teste.Text;

        //aqui eu trasnformo o campo em templade e atualizo a grid
        GridViewClientes.EditIndex = e.NewEditIndex;
        AtualizarGrid(false);

        //aqui eu pego o valor depois que ele vira um tampladefield 
        DropDownList drop = (DropDownList)GridViewClientes.Rows[e.NewEditIndex].Cells[3].FindControl("DropDownListUF");
        drop.SelectedValue = uf.ToString();

               
        
    }

Acho que é isso aí espero ter ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado por sua ajuda meu amigo.

 

Porem o que eu quero realmente e apenas pegar o conteudo de uma das colunas do GridView, populado manualmente.

Desejo pegar o ID que esta presente em uma das coluna do Grid.

 

Obrigado e um Ambraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, você pode pegar o valor no evento RowDataBound, aonde o parâmetro referente ao evento (e) tem a opção de selecionar o conteúdo de uma linha.

 

e.Row.Cells[0].Text;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim...

 

minhavariavel = gridview1.SelectedRow.Cells[1].Text;

 

para pegar o valor, o evento tem que estar no evento SelectedIndexChanged do grid

 

 

Abraços

 

Brissolare

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.