Creation d'une div dynamiquement en VB.net

Résolu
nemolinux Messages postés 5 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 18 juillet 2006 - 18 juil. 2006 à 10:07
lilippx Messages postés 149 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 15 septembre 2007 - 18 juil. 2006 à 11:00
Bonjour a tous,

Débutant en VB.net, j'aimerais créer une DIV dynamiquement, non visible par defaut, et par la suite, en fonction d'un évennement donné, la rendre visible. J'ai testé différentes manieres mais rien ne fait. Voici un certain nombre d'exemples :

1er essai :

            Dim div As New LiteralControl
            div.ID = "divImgInfo" + i.ToString()
            div.Text = "
"
            PH.Controls.Add(div)
     ' Du contenu est ajouté dynamiquement ici
            div = New LiteralControl
            div.Text = "
"
            PH.Controls.Add(div)

PH est un PlaceHolder. J'ajoute du contenu dans ce placeHolder dynamiquement aussi. Lorsque je veux recupérer le control par :

                Dim divImgInfo As HtmlGenericControl
                divImgInfo = CType(Page.FindControl("divImgInfo" & i), HtmlContainerControl)
Il me dit : Specified cast is not valid.

2eme essai :

           Dim div As New Label
            div.Text = "
"

            PH.Controls.Add(div)

     ' Du contenu est ajouté dynamiquement ici

            div = New Label

            div.Text = "
"

            PH.Controls.Add(div)

a la recupération par :

                Dim divImgInfo As HtmlContainerControl

                divImgInfo = CType(Page.FindControl("divImgInfo" & i), HtmlContainerControl)

Il me dit : Object reference not set to an instance of an object..

Je ne vois pas comment faire. Si quelqu'un a une idée?? J'espere que je suis assez clair. Sinon j'essayerai de detailler.

Merci d'avance a vous tous. Bye

3 réponses

nemolinux Messages postés 5 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 18 juillet 2006
18 juil. 2006 à 10:45
Re et merci de votre reponse rapide.

Entre temps j'ai testé d'autres methodes, et j'ai trouvé la solution.

En fait, comme je declare mon div en tant que new Label (en dynamique), lors de la recuperation, je dois caster en Label et la cela fonctionne. Je cange donc mon contenu comme s'il s'agissait d'un simple texte et le tour est joué.

Encore merci pour tout. A bientot
3
lilippx Messages postés 149 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 15 septembre 2007
18 juil. 2006 à 10:42
salut,
essayes ca, je ne connais pas trop vb mais ca doit etre bon
dim div as new HtmlGenericControl()
div=new HtmlGenericControl("
")
0
lilippx Messages postés 149 Date d'inscription samedi 19 mars 2005 Statut Membre Dernière intervention 15 septembre 2007
18 juil. 2006 à 11:00
sinon en fait c'était ca :
div=new HtmlGenericControl("div id='"divImgInfo" &  i.ToString() & "' runat='server' style='visibility:hidden'")
0