2009-12-15 5 views
0

J'essaye de faire ce qui suit: Je n'ai qu'un ScriptManager et un UpdatePanel (avec ContentTemplate vide) sur une page. Je voudrais ajouter un bouton dessus pendant le chargement de la page. Ensuite, après avoir appuyé sur le bouton, j'aimerais obtenir une requête Ajax et générer des contrôles dynamiques sur la page.ASP.NET ajoutant des contrôles Ajax à UpdatePanel dans la requête Ajax

Mais cela ne fonctionne pas, le code est ci-dessous:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if(!IsPostBack) 
     listServices(); 
} 

private void listServices() 
{ 
    Button button = new Button(); 
    button.Text = "Save"; 
    button.ID = "Save"; 
    button.Click += new EventHandler(button_Click); 

    UpdatePanel1.ContentTemplateContainer.Controls.Clear(); 
    UpdatePanel1.ContentTemplateContainer.Controls.Add(button); 

    AsyncPostBackTrigger trig = new AsyncPostBackTrigger(); 
    trig.ControlID = button.UniqueID; 
    trig.EventName = "Click"; 
    UpdatePanel1.Triggers.Add(trig); 
} 

void button_Click(object sender, EventArgs e) 
{ 
    throw new NotImplementedException(); 
} 

Je l'ai regardé dans: [Ajout de contrôles dynamiquement à un UpdatePanel dans ASP.NET AJAX] [1] Mais il ne résoudre le problème dans mon cas.

Pour que cela soit possible, de nombreux services ont cette fonctionnalité.

Merci pour votre aide. Adam

+0

Vous avez pas vraiment détaillée quel est le problème ... "ça ne marche pas" ne nous donne pas grand chose à faire. – womp

+0

OK, le problème est: Lorsque la page est générée, je vois le bouton Enregistrer. Mais lorsque je clique dessus, l'événement button_Click n'est pas déclenché (mais la méthode Page_Load est, IsPostBack == false). – Adam

+0

hai adam! Ispostback était le prob ... –

Répondre

Questions connexes