Pergunta

Estou criando um arquivo-browser em ASP.Net, mas eu tenho que correr em um problema que eu acredito que se refere a eventos-wireing em controles dinâmicos. Vou explicar o que meu código faz aqui:

Quando os meus página é carregada (OnLoad) i chamar um método (createStuff ()) que criam uma série de linkbuttons (representando pastas em um diretório atual), que estão ligados a um evento que muda o diretório atual para aquele que está associado com o linkbutton.

Uma vez que um linkbutton-click-evento é acionado após OnLoad é chamado (e o diretório atual, portanto, é primeiro mudou depois onload) faz o linkbuttons não atualizar para refletir o novo diretório atual (eles são criados antes do diretório atual é alterado pelo clique-evento). Portanto, eu também chamar createStuff () in OnLoadComplete resultando nos linkbuttons sendo atualizados e refletindo as pastas no novo diretório atual.

No entanto (e este é o meu problema) parece que o wireing evento (Clique + = new EventHandler (ChangeDirectory)) I fazer em createStuff () realmente não funciona quando o método é chamado em OnLoadComplete (OnLoadComplete é chamado após um linkbutton-click-evento foi demitido). O resultado é que, enquanto o texto-propriedade dos linkbuttons refletir as pastas no novo diretório clicando nos linkbuttons não dispara o evento.

Como posso resolver este problema? Tentei rewireing os eventos sobre os LinkButtons em OnLoad, mas mesmo resultado.

Agradecemos antecipadamente

Simon, Dinamarca

Foi útil?

Solução

propriedade ID Set do LinkButton de forma consistente.

Duas causas comuns deste comportamento são (1) falta manipuladores de eventos e (2) falta propriedades de identificação. Desde que você tem certeza de que o manipulador de eventos está sendo anexado durante OnLoad seguida, faltando propriedades de ID é o provável culpado.

Quando um usuário clica em seu LinkButton no cliente, um PostBack é enviado para o servidor que dá nome ao LinkButton por ID. Se você não está garantindo que o seu controle tem a mesma identificação entre postbacks seu manipulador de eventos pode não ser levantadas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top