Usuário com melhor resposta
Executar as acoes a partir de um botao de um datalist

Pergunta
-
Olá pessoal, estou travado nisso aqui e nao consigo arrumar.
Preciso que qdo o botao do datalist for clicado occora a acao programada.
Ja entrei no msdn e fiz de acordo com a biblioteca
http://msdn.microsoft.com/pt-br/library/df6hth3s%28VS.90%29.aspx
vou postar meu codigo
ASP.NET
[code]
<asp:DataList ID="gridCategorias" runat="server" RepeatLayout="Flow" ShowFooter="False"
ShowHeader="False">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<div class="produto">
<div class="textoprod">
<p class="tituloprod">
<%#DataBinder.Eval(Container.DataItem, "nome")%></p>
<p>
Preço:<%#String.Format("{0:C2}", Convert.ToDouble(DataBinder.Eval(Container.DataItem, "preco")))%>.</p>
<asp:ImageButton ID="AddCarrinhoBTN" runat="server" ImageUrl="imagens/botao_comprar.gif"
CommandName="AddCarrinho" CommandArgument='<%#DataBinder.Eval(Container.DataItem, "idprod")%>' /><!--Adicionar ao btn se for usar o metodo btn click ''''' OnClick="AddCarrinhoBTN_Click" '''''-->
</div>
<div class="imgproduto">
<a href="DetalhesProd.aspx?Produto=<%#DataBinder.Eval(Container.DataItem, "idprod")%>">
<img border="0" src="produtos/<%#DataBinder.Eval(Container.DataItem, "impeq")%>"
alt="" /></a>
</div>
</div>
</ItemTemplate>
</asp:DataList>[/code]
VB.NET
[code]
Protected Sub gridCategorias_ItemCommand(ByVal source As Object, ByVal e As DataListCommandEventArgs)
If e.CommandName = "AddCarrinho" Then
Response.Redirect("http://www.manaca.com.br")End If
End Sub[/code]
o response.redirect é so pra saber se esta ocorrendo o click
O meu problema é que nao consigo executar nem uma ação no click do meu imagebutton- Editado RodrigoViolato terça-feira, 28 de setembro de 2010 19:23 explicacao extra
Respostas
-
Amigo, como vc esta usando VB.Net, acho q vc esqueceu de por o Handles depois do metodo, tem que ser assim:
Protected Sub gridCategorias_ItemCommand(ByVal source As Object , ByVal e As DataListCommandEventArgs) Handles gridCategorias.ItemCommand
Você precisa ou por o Handles no final no metodo ou especificar o metodo no ASPX.
Abraços,
- Editado André Luiz de Rocha Castro terça-feira, 28 de setembro de 2010 20:23 formatação
- Marcado como Resposta RodrigoViolato sexta-feira, 1 de outubro de 2010 19:25
Todas as Respostas
-
Amigo, como vc esta usando VB.Net, acho q vc esqueceu de por o Handles depois do metodo, tem que ser assim:
Protected Sub gridCategorias_ItemCommand(ByVal source As Object , ByVal e As DataListCommandEventArgs) Handles gridCategorias.ItemCommand
Você precisa ou por o Handles no final no metodo ou especificar o metodo no ASPX.
Abraços,
- Editado André Luiz de Rocha Castro terça-feira, 28 de setembro de 2010 20:23 formatação
- Marcado como Resposta RodrigoViolato sexta-feira, 1 de outubro de 2010 19:25
-
Ae cara, era o handles mesmo, ta funcionando beleza!
[code]
Protected Sub gridCategorias_ItemCommand(ByVal gridCategorias As Object, ByVal e As DataListCommandEventArgs) Handles gridCategorias.ItemCommand
If e.CommandName = "AddCarrinho" Then
Response.Redirect("http://www.manaca.com.br")
End If
End Sub
[/code]
Ta funcionando perfeito, e obrigado pela dica tbm.