none
Como adicionar evento double click em um loop ? RRS feed

  • Pergunta

  • Pessoal estou com um problema que é o seguinte :

    Criei um galleryControl que vai me mostrar imagens, ao clicar em qualquer imagem quero que seja executava a mesma função porém passando parâmetros diferentes, até ai eu consegui fazer.. porém quando eu clico em UMA imagem.. se tiver 40 itens , os 40 eventos são executados.. alguem sabe me responder a maneira correta de se fazer isso ? 

    Aqui está um exemplo do meu código :

    for (int i = 1; i <= 40; i++) 
    {

    GalleryItem gi = new GalleryItem(img, i.ToString(), Titulo);
                            gi.Gallery.ItemDoubleClick += new GalleryItemClickEventHandler((sender, x) => AbrirFuncao(gi, null, ParametroInt));
                            grupo1.Items.Add(gi);                       

                            gc.Update();

    }

    Agradeço desde já !

    segunda-feira, 3 de dezembro de 2012 12:34

Respostas

  • Você deveria criar o evento para o seu GalleryItem gi, e não para o Gallery.

    gi.ItemDoubleClick += new GalleryItemClickEventHandler

    Eu removi o gi.Gallery, pois isto fazia com que você adiciona 40 tratadores de evento para o mesmo objeto.

    • Sugerido como Resposta Vitor Mendes segunda-feira, 3 de dezembro de 2012 18:51
    • Marcado como Resposta Jeff Azevedo quarta-feira, 19 de dezembro de 2012 17:09
    segunda-feira, 3 de dezembro de 2012 17:57