quinta-feira, 16 de novembro de 2017

Editar Dados Pelo Id / Repeater - ASP.NET(VB)

Neste artigo vou mostrar como editar dados em uma pagina pelo request id.

Primeiro na página onde irá exibir dados que iremos clicar para edita-los vamos fazer o seguinte;

Digamos que está utilizado um repeater (serve para qualquer coisa desde que tenha um <Div>)

Exemplo do Repeater;


 <asp:Repeater ID="Repeater1" runat="server">  
     <ItemTemplate>  
       <div class="jogo" OnClick="RedirectToGameDetail('<%#Session("NivelAcesso").ToString%>', <%# DataBinder.Eval(Container.DataItem, "Id") %>)">  
         <div class="capa-jogo">  
           <img alt="<%# DataBinder.Eval(Container.DataItem, "Titulo") %>" src="<%# DataBinder.Eval(Container.DataItem, "Imagem") %>"/>  
         </div>  
         <div class="nome-jogo">  
           <%# DataBinder.Eval(Container.DataItem, "Titulo") %>  
         </div>  
       </div>  
     </ItemTemplate>  
   </asp:Repeater>  

Repare que utilizando <%# DataBinder.Eval(Container.DataItem, "Titulo") %>  você se conecta ao CodeBehind do asp.net fazendo isso, estamos setando os dados no repeater 

Carregar Repeater

Para carregar um repeater basta utilizar isso no codebehind;


 Private _Jogos As JogosMetodos  
 Public Sub CarregarDados()  
    _jogos = New JogosMetodos  
   Repeater1.DataSource = _Jogos.ObterDados  
   Repeater1.DataBind()  
 End Sub  

E no repeater do HTML, você monta a estrutura, e onde quer exibir os dados adicione <%# DataBinder.Eval(Container.DataItem, "Titulo") %>  

JavaScript


Más o foco é editar os dados... Repare no <div class="jogo" OnClick="RedirectToGameDetail('<%#Session("NivelAcesso").ToString%>', <%# DataBinder.Eval(Container.DataItem, "Id") %>)">   em foco (OnClick) nesse cara, colocamos um evento em JavaScript para efetuar um evento, código do script (que pode ser colocado em baixo do repeater);


  <script>  
     function RedirectToGameDetail(perfil, id) {  
       if (perfil === "A") {  
         top.location.href = "CadastroEdicao.aspx?id=" + id  
       } else {  
         top.location.href = "DetalheJogo.aspx?id=" + id      
       }        
     }  
   </script>  

Esse Script vai se conectar com OnClick e irá abrir uma nova pagina "cadastroEdicao.aspx" com o request id "CadastroEdicao.aspx?id=" + id.

Concatenamos o link de de cadastro com o id do item selecionado.

Pagina de Edição

Já na pagina de edição temos 2 textbox TxtTitulo e TxtDetalhes.

Temos nossa classe que carrega os dados (não vou entrar muito no detalhe de carregar dados, temos um post sobre isso)

Agora como pegamos o Id? Simples!


 Dim _Jogos As JogosMetodos ' Referenciamos nossa classe  
 Public Sub CarregarDadosParaEdicao()  
    _Jogos = New JogosMetodos ' Instanciamos nossa classe  
    If Request.QueryString.AllKeys.Contains("id") Then ' Aqui verificamos se tem nossa id  
      Dim ID = 0       
      Dim Jogo = _Jogos.CarregarDados(Integer.TryParse(Request.QueryString("id"), ID))  
      TxtTitulo.text = Jogo.Titulo  
      TxtDescricao.Text = Jogo.Descricao  
   End If   
 End Sub  

E pronto, só criar o metodo de edição! pegando o id dessa forma!

COMENTE

& Compartilhe

0 comentários:

Postar um comentário

 

Copyright © 2015 Projeto Programação

Distributed By My Blogger Themes | Designed by Templateism