Bouton évènement

cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007 - 16 avril 2007 à 17:12
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007 - 17 avril 2007 à 15:54
Bonjour,
Je ne comprends pas pourquoi le clique sur le boutonCP ne marche pas, ne me redirige pas sur la page "CreateParts.aspx",
voici mon code


protected
void Button1_Click(
object sender,
EventArgs e)


{
            Button createpart =
new
Button();
            createpart.Text =
"Create Part";
            createpart.ID =
"ButtonCP";
            Page.Master.FindControl(
"ContentPlaceHolder1").Controls.Add(
new
LiteralControl(
"<center>"));
            Page.Master.FindControl(
"ContentPlaceHolder1").Controls.Add(createpart);
            Page.Master.FindControl(
"ContentPlaceHolder1").Controls.Add(
new
LiteralControl(
"</center>"));
           

            createpart.Click +=
new System.
EventHandler(ButtonCP_Click);
}








public



void
ButtonCP_Click(

object
sender,

EventArgs
e)
{
              Response.Redirect(

"CreateParts.aspx"
);
}Merci
Sabine

6 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
16 avril 2007 à 22:18
Bonjour,


Comme je te l'ai dit dans un autre message lit cet article : http://weblogs.asp.net/infinitiesloop/archive/2006/08/25/TRULY-Understanding-Dynamic-Controls-_2800_Part-1_2900_.aspx qui explique comment utiliser les controles dynamiques. Dans ton cas c'est normal que celui ci ne soit pas déclenché car lors du postback ton button n'existe pas vu que tu ne l'as pas recréer





<hr />
Cyril - MSP - MCTS ASP.net & SQL
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
16 avril 2007 à 22:55
Ouaaah je comprends pas tout!
il faut que je remette mes controles dans un page_init, ok, mais j ai une boucle qui créait en fonction du nombre que rentre l utilisateur des textbox... donc faut queje remettre la boucle?
et je dois recréer quels controles? juste les textboxs? c est un peu brouillon tout ça , en fait c est ma boucle qui me perturbe + qu autre chose!
je crois que je vais trouver un autre systeme pour représenter mes données!

Sabine
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
16 avril 2007 à 23:07
J ai fais ça mais je comprends pas à quoi ça sert, et ça fait rien... à part me rajouter une copie du bouton!

protected



override



void
OnInit(

EventArgs
e) {


Button
createpart =

new



Button
();createpart.Text =


"Create Part"
;createpart.ID =


"ButtonCP"
;Page.Master.FindControl(


"ContentPlaceHolder1"
).Controls.Add(createpart);


base
.OnInit(e);}
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
16 avril 2007 à 23:23
Pardon pour les 2 messages d avant, je viens de comprendre... c est bon merci, j ai enfin compris...merci 1000 fois,
maintenant je vais tenter de récupérer les données!

bonne soirée

Sabine
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
17 avril 2007 à 00:05
coool

j'espere que tu mettras la solution ici, car je suis sur que d'autres personnes auront le meme problème ;-)

<hr />Cyril - MSP - MCTS ASP.net & SQL
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
17 avril 2007 à 15:54
Oui j oublie souvent de mettre la solution ;-)
La voici:
-- il faut redéclarer le bouton déclaré de la meme manière lors d un évènement. Par exemple, mon bouton "createpart" est construit lors d un clique sur un bouton
Donc j ai copié collé toute la déclaration dans OnInit pour l initialiser, et je le rends invisible sinon on le verra apparaitre!
et donc là l'évènement sur ce bouton marchera!

protected
override
void OnInit(
EventArgs e)
{
         
Button createpart =
new
Button();
         createpart.Text =
"Create Part";
         createpart.ID =
"ButtonCP";
         Page.Master.FindControl(
"ContentPlaceHolder1").Controls.Add(createpart);
         createpart.Visible =
false;
         createpart.Click +=
new System.
EventHandler(ButtonCP_Click);
         
base.OnInit(e);
}

Voilaaaaaa,
Sabine
0
Rejoignez-nous