OVH Cloud OVH Cloud

Débutant : Ajouter un control Bouton dynamiquement a un webform

7 réponses
Avatar
Dgef
Bonjour a tous,
J'aimerais savoir si il est possible et si oui comment ajouter un control
"BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
code ci-dessous mais j'obtient le message d'erreur suivant:
[HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
inside a form tag with runat=server.]
PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
runat="server">


voila le code que j'ai essayer:

Private Sub Page_Load (....)
Dim cmd1 As Button = New Button()
cmd1 = AttribueDossier(DirectoryName, Dir)
plh.Controls.Add(cmd1)
End Sub

Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
String) As Button
Dim cmd As New Button()
cmd.Text = Item
Return cmd
End Function

Merci de votre aide si précieuse!

7 réponses

Avatar
Dgef
J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
un evenement click sur les bouton dynamiquement creer. le nombre de bouton
varie selon certaines condition (emplacement dans l'arborescence de dossier)
donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
pas utiliser l'index au moment de la creation, je dois absolument le faire
dynamiquement.

Quelqu'un peux m'aider ???

Merci

"Dgef" a écrit :

Bonjour a tous,
J'aimerais savoir si il est possible et si oui comment ajouter un control
"BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
code ci-dessous mais j'obtient le message d'erreur suivant:
[HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
inside a form tag with runat=server.]
PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
runat="server">


voila le code que j'ai essayer:

Private Sub Page_Load (....)
Dim cmd1 As Button = New Button()
cmd1 = AttribueDossier(DirectoryName, Dir)
plh.Controls.Add(cmd1)
End Sub

Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
String) As Button
Dim cmd As New Button()
cmd.Text = Item
Return cmd
End Function

Merci de votre aide si précieuse!





Avatar
Millox Frédéric
Salut,

rajoute ce bout de code :

AddHandler btnDynamique.Click, AddressOf BtnDynamique_Click

avec BtnDynamique_Click ayant comme signature :

Private Sub BtnDynamique_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)

' Action à effectuer

End Sub

A+

--
fmillox


"Dgef" a écrit :

J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
un evenement click sur les bouton dynamiquement creer. le nombre de bouton
varie selon certaines condition (emplacement dans l'arborescence de dossier)
donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
pas utiliser l'index au moment de la creation, je dois absolument le faire
dynamiquement.

Quelqu'un peux m'aider ???

Merci

"Dgef" a écrit :

> Bonjour a tous,
> J'aimerais savoir si il est possible et si oui comment ajouter un control
> "BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
> code ci-dessous mais j'obtient le message d'erreur suivant:
> [HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
> inside a form tag with runat=server.]
> PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
> runat="server">
>
>
> voila le code que j'ai essayer:
>
> Private Sub Page_Load (....)
> Dim cmd1 As Button = New Button()
> cmd1 = AttribueDossier(DirectoryName, Dir)
> plh.Controls.Add(cmd1)
> End Sub
>
> Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> String) As Button
> Dim cmd As New Button()
> cmd.Text = Item
> Return cmd
> End Function
>
> Merci de votre aide si précieuse!
>
>
>


Avatar
Dgef
Salut Frédéric,
Le code que tu me propose associe l'evenement click d'un bouton dynamique a
une Sub qui a été déclarer au moment de la création. Je dois définir
dynamiquement le contenue de la Sub. Le probleme est que je ne sais pas
comment créer une sub (dynamiquement) pour chaque bouton créer dynamiquement
qui affectera une popriete TEXT différente (selon le bouton dynamique qui a
été cliquer) à un TEXTBOX.

EXEMPLE: je veux que pour chaque dossier trouver dans le C:
(txt_FolderActuel.Text) creer une Sub qui affectera la variable DIR à un
TEXTBOX.TEXT

Dim Directories() As String =
System.IO.Directory.GetDirectories(Me.txt_FolderActuel.Text)
Dim DirectoryName As String = Right(Dir, Len(Dir) -
Len(Me.txt_FolderActuel.Text))
Dim Dir As String
For Each Dir In Directories
Dim Lit As New Literal()
Dim cmd1 As Button = New Button()
cmd1 = AttribueDossier(DirectoryName, Dir)
PlaceHolder1.Controls.Add(cmd1)
PlaceHolder1.Controls.Add(Lit)
Next

Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
String) As Button
Dim cmd As New Button()
cmd.Text = Item
cmd.ID = Item
Return cmd
End Function

"Millox Frédéric" a écrit :

Salut,

rajoute ce bout de code :

AddHandler btnDynamique.Click, AddressOf BtnDynamique_Click

avec BtnDynamique_Click ayant comme signature :

Private Sub BtnDynamique_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs)

' Action à effectuer

End Sub

A+

--
fmillox


"Dgef" a écrit :

> J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
> un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
> un evenement click sur les bouton dynamiquement creer. le nombre de bouton
> varie selon certaines condition (emplacement dans l'arborescence de dossier)
> donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
> pas utiliser l'index au moment de la creation, je dois absolument le faire
> dynamiquement.
>
> Quelqu'un peux m'aider ???
>
> Merci
>
> "Dgef" a écrit :
>
> > Bonjour a tous,
> > J'aimerais savoir si il est possible et si oui comment ajouter un control
> > "BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
> > code ci-dessous mais j'obtient le message d'erreur suivant:
> > [HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
> > inside a form tag with runat=server.]
> > PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
> > runat="server">
> >
> >
> > voila le code que j'ai essayer:
> >
> > Private Sub Page_Load (....)
> > Dim cmd1 As Button = New Button()
> > cmd1 = AttribueDossier(DirectoryName, Dir)
> > plh.Controls.Add(cmd1)
> > End Sub
> >
> > Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > String) As Button
> > Dim cmd As New Button()
> > cmd.Text = Item
> > Return cmd
> > End Function
> >
> > Merci de votre aide si précieuse!
> >
> >
> >


Avatar
Millox Frédéric
Salut Dgef,

1) Si je comprends bien, pour chaque répertoire contenu dans ton répertoire
de base (txt_FolderActuel.Text), tu crées un bouton auquel tu associes
l'événement Clic.
Lorsque l'on clique dessus, tu veux que le contenu de DIR ( nom du
répertoire ) soit placé dans un textbox ( plusieurs textbox dynamiques ou un
seul prédéfini ? )

2) Petit problème, ta var DIR (dans ta procédure, la var Emplacement ) dans
ton exemple est affectée nulle part....
Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
String) As Button
Dim cmd As New Button()
cmd.Text = Item
cmd.ID = Item
Return cmd
End Function



Peux tu m'en dire un petit peu plus par rapport au point 1) ( si j'ai bien
compris t'es besoin ) et point 2) ( petite erreur dans la fonction ?) ?

A+

--
fmillox


"Dgef" a écrit :

Salut Frédéric,
Le code que tu me propose associe l'evenement click d'un bouton dynamique a
une Sub qui a été déclarer au moment de la création. Je dois définir
dynamiquement le contenue de la Sub. Le probleme est que je ne sais pas
comment créer une sub (dynamiquement) pour chaque bouton créer dynamiquement
qui affectera une popriete TEXT différente (selon le bouton dynamique qui a
été cliquer) à un TEXTBOX.

EXEMPLE: je veux que pour chaque dossier trouver dans le C:
(txt_FolderActuel.Text) creer une Sub qui affectera la variable DIR à un
TEXTBOX.TEXT

Dim Directories() As String =
System.IO.Directory.GetDirectories(Me.txt_FolderActuel.Text)
Dim DirectoryName As String = Right(Dir, Len(Dir) -
Len(Me.txt_FolderActuel.Text))
Dim Dir As String
For Each Dir In Directories
Dim Lit As New Literal()
Dim cmd1 As Button = New Button()
cmd1 = AttribueDossier(DirectoryName, Dir)
PlaceHolder1.Controls.Add(cmd1)
PlaceHolder1.Controls.Add(Lit)
Next

Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
String) As Button
Dim cmd As New Button()
cmd.Text = Item
cmd.ID = Item
Return cmd
End Function

"Millox Frédéric" a écrit :

> Salut,
>
> rajoute ce bout de code :
>
> AddHandler btnDynamique.Click, AddressOf BtnDynamique_Click
>
> avec BtnDynamique_Click ayant comme signature :
>
> Private Sub BtnDynamique_Click(ByVal sender As System.Object, ByVal e As
> System.EventArgs)
>
> ' Action à effectuer
>
> End Sub
>
> A+
>
> --
> fmillox
>
>
> "Dgef" a écrit :
>
> > J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
> > un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
> > un evenement click sur les bouton dynamiquement creer. le nombre de bouton
> > varie selon certaines condition (emplacement dans l'arborescence de dossier)
> > donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
> > pas utiliser l'index au moment de la creation, je dois absolument le faire
> > dynamiquement.
> >
> > Quelqu'un peux m'aider ???
> >
> > Merci
> >
> > "Dgef" a écrit :
> >
> > > Bonjour a tous,
> > > J'aimerais savoir si il est possible et si oui comment ajouter un control
> > > "BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
> > > code ci-dessous mais j'obtient le message d'erreur suivant:
> > > [HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
> > > inside a form tag with runat=server.]
> > > PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
> > > runat="server">
> > >
> > >
> > > voila le code que j'ai essayer:
> > >
> > > Private Sub Page_Load (....)
> > > Dim cmd1 As Button = New Button()
> > > cmd1 = AttribueDossier(DirectoryName, Dir)
> > > plh.Controls.Add(cmd1)
> > > End Sub
> > >
> > > Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > > String) As Button
> > > Dim cmd As New Button()
> > > cmd.Text = Item
> > > Return cmd
> > > End Function
> > >
> > > Merci de votre aide si précieuse!
> > >
> > >
> > >


Avatar
Dgef
Salut Frédéric,

je n'utilise qu'un textbox et le bouton va ecrire dans ce textbox. la
variable (Dir) que j'ai oublier de mentionner est declarer comme ceci:

Dim Directories() As String =
System.IO.Directory.GetDirectories(Me.txt_FolderActuel.Text)
Dim Dir As String
For Each Dir In Directories

"Millox Frédéric" a écrit :

Salut Dgef,

1) Si je comprends bien, pour chaque répertoire contenu dans ton répertoire
de base (txt_FolderActuel.Text), tu crées un bouton auquel tu associes
l'événement Clic.
Lorsque l'on clique dessus, tu veux que le contenu de DIR ( nom du
répertoire ) soit placé dans un textbox ( plusieurs textbox dynamiques ou un
seul prédéfini ? )

2) Petit problème, ta var DIR (dans ta procédure, la var Emplacement ) dans
ton exemple est affectée nulle part....
>Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> String) As Button
> Dim cmd As New Button()
> cmd.Text = Item
> cmd.ID = Item
> Return cmd
> End Function

Peux tu m'en dire un petit peu plus par rapport au point 1) ( si j'ai bien
compris t'es besoin ) et point 2) ( petite erreur dans la fonction ?) ?

A+

--
fmillox


"Dgef" a écrit :

> Salut Frédéric,
> Le code que tu me propose associe l'evenement click d'un bouton dynamique a
> une Sub qui a été déclarer au moment de la création. Je dois définir
> dynamiquement le contenue de la Sub. Le probleme est que je ne sais pas
> comment créer une sub (dynamiquement) pour chaque bouton créer dynamiquement
> qui affectera une popriete TEXT différente (selon le bouton dynamique qui a
> été cliquer) à un TEXTBOX.
>
> EXEMPLE: je veux que pour chaque dossier trouver dans le C:
> (txt_FolderActuel.Text) creer une Sub qui affectera la variable DIR à un
> TEXTBOX.TEXT
>
> Dim Directories() As String =
> System.IO.Directory.GetDirectories(Me.txt_FolderActuel.Text)
> Dim DirectoryName As String = Right(Dir, Len(Dir) -
> Len(Me.txt_FolderActuel.Text))
> Dim Dir As String
> For Each Dir In Directories
> Dim Lit As New Literal()
> Dim cmd1 As Button = New Button()
> cmd1 = AttribueDossier(DirectoryName, Dir)
> PlaceHolder1.Controls.Add(cmd1)
> PlaceHolder1.Controls.Add(Lit)
> Next
>
> Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> String) As Button
> Dim cmd As New Button()
> cmd.Text = Item
> cmd.ID = Item
> Return cmd
> End Function
>
> "Millox Frédéric" a écrit :
>
> > Salut,
> >
> > rajoute ce bout de code :
> >
> > AddHandler btnDynamique.Click, AddressOf BtnDynamique_Click
> >
> > avec BtnDynamique_Click ayant comme signature :
> >
> > Private Sub BtnDynamique_Click(ByVal sender As System.Object, ByVal e As
> > System.EventArgs)
> >
> > ' Action à effectuer
> >
> > End Sub
> >
> > A+
> >
> > --
> > fmillox
> >
> >
> > "Dgef" a écrit :
> >
> > > J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
> > > un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
> > > un evenement click sur les bouton dynamiquement creer. le nombre de bouton
> > > varie selon certaines condition (emplacement dans l'arborescence de dossier)
> > > donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
> > > pas utiliser l'index au moment de la creation, je dois absolument le faire
> > > dynamiquement.
> > >
> > > Quelqu'un peux m'aider ???
> > >
> > > Merci
> > >
> > > "Dgef" a écrit :
> > >
> > > > Bonjour a tous,
> > > > J'aimerais savoir si il est possible et si oui comment ajouter un control
> > > > "BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
> > > > code ci-dessous mais j'obtient le message d'erreur suivant:
> > > > [HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
> > > > inside a form tag with runat=server.]
> > > > PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
> > > > runat="server">
> > > >
> > > >
> > > > voila le code que j'ai essayer:
> > > >
> > > > Private Sub Page_Load (....)
> > > > Dim cmd1 As Button = New Button()
> > > > cmd1 = AttribueDossier(DirectoryName, Dir)
> > > > plh.Controls.Add(cmd1)
> > > > End Sub
> > > >
> > > > Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > > > String) As Button
> > > > Dim cmd As New Button()
> > > > cmd.Text = Item
> > > > Return cmd
> > > > End Function
> > > >
> > > > Merci de votre aide si précieuse!
> > > >
> > > >
> > > >


Avatar
Dgef
le textbox (txt_FolderActuel.Text) n'est pas dynamique, il est prédéfini.

Merci Frédéric

a+

"Millox Frédéric" a écrit :

Salut Dgef,

1) Si je comprends bien, pour chaque répertoire contenu dans ton répertoire
de base (txt_FolderActuel.Text), tu crées un bouton auquel tu associes
l'événement Clic.
Lorsque l'on clique dessus, tu veux que le contenu de DIR ( nom du
répertoire ) soit placé dans un textbox ( plusieurs textbox dynamiques ou un
seul prédéfini ? )

2) Petit problème, ta var DIR (dans ta procédure, la var Emplacement ) dans
ton exemple est affectée nulle part....
>Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> String) As Button
> Dim cmd As New Button()
> cmd.Text = Item
> cmd.ID = Item
> Return cmd
> End Function

Peux tu m'en dire un petit peu plus par rapport au point 1) ( si j'ai bien
compris t'es besoin ) et point 2) ( petite erreur dans la fonction ?) ?

A+

--
fmillox


"Dgef" a écrit :

> Salut Frédéric,
> Le code que tu me propose associe l'evenement click d'un bouton dynamique a
> une Sub qui a été déclarer au moment de la création. Je dois définir
> dynamiquement le contenue de la Sub. Le probleme est que je ne sais pas
> comment créer une sub (dynamiquement) pour chaque bouton créer dynamiquement
> qui affectera une popriete TEXT différente (selon le bouton dynamique qui a
> été cliquer) à un TEXTBOX.
>
> EXEMPLE: je veux que pour chaque dossier trouver dans le C:
> (txt_FolderActuel.Text) creer une Sub qui affectera la variable DIR à un
> TEXTBOX.TEXT
>
> Dim Directories() As String =
> System.IO.Directory.GetDirectories(Me.txt_FolderActuel.Text)
> Dim DirectoryName As String = Right(Dir, Len(Dir) -
> Len(Me.txt_FolderActuel.Text))
> Dim Dir As String
> For Each Dir In Directories
> Dim Lit As New Literal()
> Dim cmd1 As Button = New Button()
> cmd1 = AttribueDossier(DirectoryName, Dir)
> PlaceHolder1.Controls.Add(cmd1)
> PlaceHolder1.Controls.Add(Lit)
> Next
>
> Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> String) As Button
> Dim cmd As New Button()
> cmd.Text = Item
> cmd.ID = Item
> Return cmd
> End Function
>
> "Millox Frédéric" a écrit :
>
> > Salut,
> >
> > rajoute ce bout de code :
> >
> > AddHandler btnDynamique.Click, AddressOf BtnDynamique_Click
> >
> > avec BtnDynamique_Click ayant comme signature :
> >
> > Private Sub BtnDynamique_Click(ByVal sender As System.Object, ByVal e As
> > System.EventArgs)
> >
> > ' Action à effectuer
> >
> > End Sub
> >
> > A+
> >
> > --
> > fmillox
> >
> >
> > "Dgef" a écrit :
> >
> > > J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
> > > un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
> > > un evenement click sur les bouton dynamiquement creer. le nombre de bouton
> > > varie selon certaines condition (emplacement dans l'arborescence de dossier)
> > > donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
> > > pas utiliser l'index au moment de la creation, je dois absolument le faire
> > > dynamiquement.
> > >
> > > Quelqu'un peux m'aider ???
> > >
> > > Merci
> > >
> > > "Dgef" a écrit :
> > >
> > > > Bonjour a tous,
> > > > J'aimerais savoir si il est possible et si oui comment ajouter un control
> > > > "BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
> > > > code ci-dessous mais j'obtient le message d'erreur suivant:
> > > > [HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
> > > > inside a form tag with runat=server.]
> > > > PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
> > > > runat="server">
> > > >
> > > >
> > > > voila le code que j'ai essayer:
> > > >
> > > > Private Sub Page_Load (....)
> > > > Dim cmd1 As Button = New Button()
> > > > cmd1 = AttribueDossier(DirectoryName, Dir)
> > > > plh.Controls.Add(cmd1)
> > > > End Sub
> > > >
> > > > Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > > > String) As Button
> > > > Dim cmd As New Button()
> > > > cmd.Text = Item
> > > > Return cmd
> > > > End Function
> > > >
> > > > Merci de votre aide si précieuse!
> > > >
> > > >
> > > >


Avatar
Millox Frédéric
Salut Dgef,

Sur la partie 1, c'est bon j'ai compris ce que tu voulais :)
Par contre, tu n'as pas dû comprendre mon point 2) :

Dans ta boucle " For Each Dir In Directories ", tu utilises la var Dir que
dans la fonction AttribueDossier ( " cmd1 = AttribueDossier(DirectoryName,
Dir) " ).
Or dans la fonction AttribueDossier, la var Emplacement, qui contient la
valeur de la var Dir, n'est utilisée nulle part. Peux tu donc me réécrire la
fonction AttribueDossier pour que je puisse répondre à ton problème ?

Merci d'avance.

A+

--
fmillox


"Dgef" a écrit :


le textbox (txt_FolderActuel.Text) n'est pas dynamique, il est prédéfini.

Merci Frédéric

a+

"Millox Frédéric" a écrit :

> Salut Dgef,
>
> 1) Si je comprends bien, pour chaque répertoire contenu dans ton répertoire
> de base (txt_FolderActuel.Text), tu crées un bouton auquel tu associes
> l'événement Clic.
> Lorsque l'on clique dessus, tu veux que le contenu de DIR ( nom du
> répertoire ) soit placé dans un textbox ( plusieurs textbox dynamiques ou un
> seul prédéfini ? )
>
> 2) Petit problème, ta var DIR (dans ta procédure, la var Emplacement ) dans
> ton exemple est affectée nulle part....
> >Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > String) As Button
> > Dim cmd As New Button()
> > cmd.Text = Item
> > cmd.ID = Item
> > Return cmd
> > End Function
>
> Peux tu m'en dire un petit peu plus par rapport au point 1) ( si j'ai bien
> compris t'es besoin ) et point 2) ( petite erreur dans la fonction ?) ?
>
> A+
>
> --
> fmillox
>
>
> "Dgef" a écrit :
>
> > Salut Frédéric,
> > Le code que tu me propose associe l'evenement click d'un bouton dynamique a
> > une Sub qui a été déclarer au moment de la création. Je dois définir
> > dynamiquement le contenue de la Sub. Le probleme est que je ne sais pas
> > comment créer une sub (dynamiquement) pour chaque bouton créer dynamiquement
> > qui affectera une popriete TEXT différente (selon le bouton dynamique qui a
> > été cliquer) à un TEXTBOX.
> >
> > EXEMPLE: je veux que pour chaque dossier trouver dans le C:
> > (txt_FolderActuel.Text) creer une Sub qui affectera la variable DIR à un
> > TEXTBOX.TEXT
> >
> > Dim Directories() As String =
> > System.IO.Directory.GetDirectories(Me.txt_FolderActuel.Text)
> > Dim DirectoryName As String = Right(Dir, Len(Dir) -
> > Len(Me.txt_FolderActuel.Text))
> > Dim Dir As String
> > For Each Dir In Directories
> > Dim Lit As New Literal()
> > Dim cmd1 As Button = New Button()
> > cmd1 = AttribueDossier(DirectoryName, Dir)
> > PlaceHolder1.Controls.Add(cmd1)
> > PlaceHolder1.Controls.Add(Lit)
> > Next
> >
> > Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > String) As Button
> > Dim cmd As New Button()
> > cmd.Text = Item
> > cmd.ID = Item
> > Return cmd
> > End Function
> >
> > "Millox Frédéric" a écrit :
> >
> > > Salut,
> > >
> > > rajoute ce bout de code :
> > >
> > > AddHandler btnDynamique.Click, AddressOf BtnDynamique_Click
> > >
> > > avec BtnDynamique_Click ayant comme signature :
> > >
> > > Private Sub BtnDynamique_Click(ByVal sender As System.Object, ByVal e As
> > > System.EventArgs)
> > >
> > > ' Action à effectuer
> > >
> > > End Sub
> > >
> > > A+
> > >
> > > --
> > > fmillox
> > >
> > >
> > > "Dgef" a écrit :
> > >
> > > > J'ai reussis a ajouter des boutons dynamiquement a mon webform en i placant
> > > > un controle PlaceHolder au moment de la creation, il ne me reste qu'a creer
> > > > un evenement click sur les bouton dynamiquement creer. le nombre de bouton
> > > > varie selon certaines condition (emplacement dans l'arborescence de dossier)
> > > > donc l'evenement du premier bouton dynamique peut changer, je ne peux donc
> > > > pas utiliser l'index au moment de la creation, je dois absolument le faire
> > > > dynamiquement.
> > > >
> > > > Quelqu'un peux m'aider ???
> > > >
> > > > Merci
> > > >
> > > > "Dgef" a écrit :
> > > >
> > > > > Bonjour a tous,
> > > > > J'aimerais savoir si il est possible et si oui comment ajouter un control
> > > > > "BUTTON' ainsi qu'un évènement "CLICK" dynamiquement. j'ai essayer avec le
> > > > > code ci-dessous mais j'obtient le message d'erreur suivant:
> > > > > [HttpException (0x80004005): Control '_ctl2' of type 'Button' must be placed
> > > > > inside a form tag with runat=server.]
> > > > > PS: pourtant ma balise <Form> est : <form id="Frm" method="post"
> > > > > runat="server">
> > > > >
> > > > >
> > > > > voila le code que j'ai essayer:
> > > > >
> > > > > Private Sub Page_Load (....)
> > > > > Dim cmd1 As Button = New Button()
> > > > > cmd1 = AttribueDossier(DirectoryName, Dir)
> > > > > plh.Controls.Add(cmd1)
> > > > > End Sub
> > > > >
> > > > > Public Function AttribueDossier(ByVal Item As String, ByVal Emplacement As
> > > > > String) As Button
> > > > > Dim cmd As New Button()
> > > > > cmd.Text = Item
> > > > > Return cmd
> > > > > End Function
> > > > >
> > > > > Merci de votre aide si précieuse!
> > > > >
> > > > >
> > > > >