Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E ai pessoal....
Estou criando um ImageButton via code-behind. Adiciono à ele tudo o que eu preciso(id, click, imgUrl). Mas na hora de clicar no botão, ele não está executando o código do click!
alguem tem alguma idéia do que pode ser?
Código de criação do botão:
ImageButton lImgIconeApagar = new ImageButton();
lImgIconeApagar.ImageUrl = "img/icoApagar.gif";
lImgIconeApagar.ID = lRgiItem.Id.ToString();
lImgIconeApagar.Click += new ImageClickEventHandler(apagarRegistros_Click);
lImgIconeApagar.AlternateText = "Excluir registro";
lImgIconeApagar.PostBackUrl = "#";
TableCell lTbcCellApagar = new TableCell();
lTbcCellApagar.HorizontalAlign = HorizontalAlign.Center;
lTbcCellApagar.Controls.Add(lImgIconeApagar);
lTbrItem.Cells.Add(lTbcCellApagar);
Código do que o botão deve fazer:
protected void apagarRegistros_Click(object sender, ImageClickEventArgs e)
{
ImageButton lLnkSender = (ImageButton)sender;
int lIntPagina = Convert.ToInt32(lLnkSender.CommandArgument);
ApagaRegistros(lIntPagina);
}
protected void ApagaRegistros(int _id)
{
try
{
ControleRegistroManager cRM = new ControleRegistroManager();
cRM.ExcluirRegistro(_id);
Response.Write("<script type='text/javascript'>alert('Registro excluído com sucesso');</script>");
}
catch
{
Response.Write("<script type='text/javascript'>alert('Registro não excluído!');</script>");
}
}eita!!!!
bom, quando eu clico no botão nada acontece(no IE). No firefox ele da um postback mas não exclui o registro.
usei um breakpoint no _click do botão, mas ele nao entra...
editando: pode ter alguma relação por este botão estar sendo criado dentro de um placeHolder que é chamado por uma MasterPage?
testei dentro do updatePanel e funcionou.
Porém quando a imagem está dentro da tabela que eu criei, ele nao funciona. Pode ter alguma relação? pois ele não acusa erro nenhum!
Não cara eu coloquei em um form e teste e funcionou beleza!
Mesmo estando dentro de qualquer objeto o método click dele deve ser chamado, no debug ele chama o método mesmo estando dentro da tabela?
>
Não cara eu coloquei em um form e teste e funcionou beleza!
Mesmo estando dentro de qualquer objeto o método click dele deve ser chamado, no debug ele chama o método mesmo estando dentro da tabela?
nao! ele só chama o método se o botão estiver fora da tabela! http://forum.imasters.com.br/public/style_emoticons/default/cry.gif
Existe algum validador no seu formulário?
Abraços...
>
Existe algum validador no seu formulário?
Abraços...
bom dia quinte!
não existe não.
eu andei olhando o código fonte gerado, e pude perceber que existem alguns erros de html. é bem provavel que seja isso.
boa tarde pessoal
testando mais já percebi que não existe o erro de html que eu havia postado pela manhã.
fiz o seguinte teste.
coloquei um botão qualquer na tela e dei para ele o mesmo nome de um dos botões que está sendo criado dinamicamente. e para a minha supresa, AMBOS "FUNCIONAM".
Mas pq "Funcionam".
pq na minha função apagarRegistros_Click o CommandArgument está zerado.
agora se eu criar "botões auxiliares" dinamicamente, ele não funciona. mistério......
Opa!
Podem marcar como resolvido.
eu estava com mais de um controle com o mesmo nome! era esse o problema. Desculpa não avisar antes! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Thom eu testei seu código e funcionou 100%!