fcampagne
Messages postés195Date d'inscriptionvendredi 3 juin 2005StatutMembreDernière intervention13 juillet 2006
-
29 mai 2006 à 16:57
smoitry
Messages postés69Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention26 juillet 2007
-
30 mai 2006 à 14:02
Bonjour
J'ai une page principale aspx qui instancie une classe que j'ai réalisé et placé dans le repertoire app_code
Dans cette classe j'ai crée un handler qui lors d'un clique sur un bouton créer dans ma classe doit lever l'appel a une methode appartenant a cette meme classe
Le probléme est lorsque sur la page principale je clique sur le bouton de ma classe rien ne se passe
Je ne comprend pas du tout!
ma classe :
Protected WithEvents addcolumn As ButtonField
...
addColumn = New ButtonField()
addColumn.CommandName = "Add"
addColumn.DataTextField = "nom"
addColumn.CausesValidation = False
addColumn.ButtonType = ButtonType.Button
.Columns.Add(addColumn)
AddHandler mongridview.RowCommand, AddressOf gv_RowCommand
Sub gv_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
HttpContext.Current.Response.Write("test
")
End Sub
fcampagne
Messages postés195Date d'inscriptionvendredi 3 juin 2005StatutMembreDernière intervention13 juillet 20063 30 mai 2006 à 10:22
Ca y est le pb est résolu
Il faut bien effectivement ajouter les éléments dans le page_init de la webform
Je récupére les éléments que ma classe créer dynamiquement et je l'ai place dans le page_init et hop nikel ca marche
Donc moralité, il faut bien suivre le cycle de vie d'une page asp pour codé correctement!
Merci encore a jesusonline qui maitrise vraiment bien son sujet et qui m'a bien aider une fois de plus!
smoitry
Messages postés69Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention26 juillet 2007 30 mai 2006 à 09:34
J'ai EXACTEMENT le même problème !!!
J'allais poser une nouvelle question sur le forum, mais je vois que l'on bute sur la même chose !
Alors je vais compléter ta question par la mienne : pourquoi la gestion interne à un contrôle personnalisé du click ne fonctionne que dans un WebUserControl (fichier ascx) ?
Eh oui car j'ai fait un essai pour constater que mis dans un fichier .ascx, ça marche, prenons le code suivant :
protected
Literal litResultat;
protected
override
void CreateChildControls()
{
base.CreateChildControls();
LinkButton l1 =
new
LinkButton();
l1.ID =
"l1";
l1.Text =
"LinkButton1";
l1.Click +=
new
EventHandler(linkbutton_Click);
Controls.Add(l1);
Literal lit1 =
new
Literal();
lit1.Text =
" ";
Controls.Add(lit1);
LinkButton l2 =
new
LinkButton();
l2.ID =
"l2";
l2.Text =
"LinkButton2";
l2.Click +=
new
EventHandler(linkbutton_Click);
Controls.Add(l2);
Literal lit2 =
new
Literal();
lit2.Text =
"
";
Controls.Add(lit2);
if (litResultat !=
null)
litResultat.Text = ((
LinkButton)sender).ID;
}
Faites un copier/coller d'une part dans un WebCustomControl (fichier .cs placé dans un projet de type WebControlLibrary), et également dans un WebUserControl (fichier .ascx placé dans le site web), puis placez ces deux contrôles sur une page aspx, et lancez le projet. Essayez, vous verrez que seul le contrôle .ascx gère le clic ...
La question est : POURQUOI ?
Note pour Jesusonline : c'est ça qui me tracasse depuis jeudi
fcampagne
Messages postés195Date d'inscriptionvendredi 3 juin 2005StatutMembreDernière intervention13 juillet 20063 30 mai 2006 à 09:51
Rectification
Meme dans une page aspx standard, la création dynamique de bouton et l'association d'événement ne marche pas.
C dingue ce truc!!!
voila mon code
'declaration du bouton
Protected WithEvents delete As New Button
'affectation de ses propriétés
Private Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
Response.Write("dans init")
delete.Text = "Supprimez le processus"
AddHandler delete.Click, AddressOf delete_click
End Sub
'gestion du click
Protected Sub delete_click(ByVal sender As Object, ByVal e As System.EventArgs) Handles delete.Click
Response.Write("dans bouton delete")
End Sub
'ajout du bouton dans la page
PlaceHolder.Controls.Add(delete)
J'avoue que la je suis a cour d'idée, et en prime un beau mal de crane qui s'annonce
smoitry
Messages postés69Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention26 juillet 2007 30 mai 2006 à 10:47
Heureux que tu ais trouvé la solution ! Malheureusement ça ne solutionne pas mon problème car de mon côté je ne crée pas les contrôles dans une webform mais dans un contrôle personnalisé ... Pas grave ! Je fais un nouveau post !
Juste une question : jesusonline t'as répondu en MP ? Parce que je ne vois pas ses posts ! C'est pas un bug du forum ?
A+
Stéph.
Vous n’avez pas trouvé la réponse que vous recherchez ?