2010-11-27 14 views
2

J'essaye d'ajouter par programme des boutons de lien à une page. J'essaie de suivre un exemple que j'ai vu en ligne mais je n'arrive pas à le faire fonctionner.ajouter dynamiquement linkbutton à la page asp.net vb

Je souhaite que le bouton de liaison appelle un sous-programme par ex. download_file (,)

À titre d'exemple ce que j'ai est:

  Dim lb = New LinkButton() 
      lb.CausesValidation = True 
      lb.Attributes.Add("runat", "server") 
      lb.CommandName = "lb_Click" 
      lb.CommandArgument = "test" 
      lb.Text = reader("filename") 
      lb.EnableViewState = True 
      lb.Enabled = True 

      AddHandler lb.Click, AddressOf download_file 

      Panel1.Controls.Add(lb) 

Apprendre à apparaître serait un début sur le bouton (s)! Aussi, dois-je les mettre sur un panneau?

Des idées?

Répondre

1

Quel événement dans le cycle de vie est ce code? Vous devez ajouter des contrôles dynamiquement, je crois, dans les événements de page Init ou PreInit.

+0

salut, ouais j'ai déplacé le code à l'événement init pag et les boutons apparaissent maintenant. Assez pour me lancer sur eux! Merci. – thegunner

0

Cela pourrait être un problème de publication. Vous pouvez essayer de définir un point d'arrêt et voir si ce code est appelé. J'ai testé votre code à l'intérieur de l'événement de clic d'un contrôle de bouton (qui affiche automatiquement lorsque vous cliquez dessus), et cela a fonctionné. Cependant, j'ai supprimé la partie reader() et j'ai remplacé "Panel1" par "Form" (cela ne devrait pas faire de différence).

De même, si vous ajoutez dynamiquement votre panneau, veillez également à l'ajouter aux contrôles de la page. Notez le code dans la méthode init.

0

+0

Ceci est vraiment un commentaire, pas une réponse à la question. Vous pouvez toujours commenter vos propres messages, et une fois que vous aurez suffisamment de [réputation] (http://stackoverflow.com/faq#reputation) vous pourrez [commenter n'importe quel message] (http://stackoverflow.com/ privilèges/commentaire). – ThePower

+0

je ne t'ai pas eu, –