Creation d'une div dynamiquement en VB.net [Résolu]

Signaler
Messages postés
5
Date d'inscription
mercredi 1 juin 2005
Statut
Membre
Dernière intervention
18 juillet 2006
-
Messages postés
149
Date d'inscription
samedi 19 mars 2005
Statut
Membre
Dernière intervention
15 septembre 2007
-
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

Messages postés
5
Date d'inscription
mercredi 1 juin 2005
Statut
Membre
Dernière intervention
18 juillet 2006

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
Messages postés
149
Date d'inscription
samedi 19 mars 2005
Statut
Membre
Dernière intervention
15 septembre 2007

salut,
essayes ca, je ne connais pas trop vb mais ca doit etre bon
dim div as new HtmlGenericControl()
div=new HtmlGenericControl("
")
Messages postés
149
Date d'inscription
samedi 19 mars 2005
Statut
Membre
Dernière intervention
15 septembre 2007

sinon en fait c'était ca :
div=new HtmlGenericControl("div id='"divImgInfo" &  i.ToString() & "' runat='server' style='visibility:hidden'")