Pergunta

O que você realisticamente usar OnItemDataBound para em um repetidor?

Foi útil?

Solução

"Este evento oferece a última oportunidade para acessar o item de dados antes que ele seja exibido no cliente. Após este evento é gerado, o item de dados é anulado para fora e não está mais disponível."

http: // MSDN .microsoft.com / en-us / library / system.web.ui.webcontrols.datagrid.onitemdatabound.aspx

Outras dicas

Um uso poderia ser geração de controle dinâmico com base em informações que só está disponível a partir do item de dados ligados no momento em que é obrigado a Repeater.

Eu usei-o quando eu precisava para massagear os dados um pouco para cada item no repetidor.

É necessário se você quiser personalizar um item individual dentro do modelo com controles dinâmicos ou dados que não fazia parte do conjunto de resultados que originalmente ligado ao repetidor.

Pense nisso como este. Como o item está sendo criado, todos os eventos OnDataBinding estão disparando para esse item específico. Poderia haver muitas coisas que acumulo um item tantos eventos OnDataBinding poderiam ser chamados. Uma vez que tudo é feito, este é o evento que é acionado assim que você pode aplicar alguns 'toques' finais e todos os eventos OnDataBinding são feitas neste momento.

Por exemplo. Você artigo preenche 10 campos de dados e faz todo tipo de coisa quando ligado. Uma vez que todos os dados é preenchido você quiser conferir algumas peças de que os dados que agora foi criado e definir alguma coisa para todo o item como toda a cor de linha ou alguns ícones com base em dados de todo o item.

Eu usei-o para implementar um repetidor aninhada. Em manipulador de eventos ItemDataBound do repetidor exterior, você executar o código para vincular instância do item atual do repetidor interior.

I encontrar de ligação de dados sintaxe difícil de ler e depurar. Eu não acho que eu já fiz nada com OnItemDataBound que eu não poderia ter feito colocando uma expressão de ligação de dados na marcação, mas se eu quiser mudá-lo mais tarde, eu pessoalmente achar que é muito mais fácil simplesmente set um break point no OnItemDataBound e, em seguida, usar a janela imediata para pregar abaixo o que eu quero ter prestado. Eu também sou um adepto ao aparentemente desaparecendo (por exemplo rubi) dictum que o código e marcação deve ser separado.

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