IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

imagebutton rien ne se passe sur l'évènement _Click


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2003
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2003
    Messages : 197
    Par défaut imagebutton rien ne se passe sur l'évènement _Click
    Bonjour à tous !

    Je rencontre un problème qui me donne des nœuds aux cerveaux depuis quelques heures !

    J'ai crée un User Control qui contient plusieurs labels et un imagebutton (même souci avec un button)

    lorsque je clique sur mon imagebutton l'évènement click ne se déclenche pas !

    J'ai vérifier la page aspx et l'évènement est bien attaché, j'ai ajouté des points d'arrêts mais je ne passe jamais dans le code.

    Voici globalement ce que je fais !

    Je possède une page1 qui contient un combobox et un panel.

    Dans le combobox je charge des éléments, lorsqu'on en séléctionne un j'ai une fonction qui s'occupe de remplir mon panel avec n User Control :

    Voici le code :

    private void RecupListeConges(string nom, string prenom)
    {
    DataSet ds = Class_Conges.DemandesByCollaborateur(nom, prenom);
    this.Panel1.Controls.Clear();
    if (ds != null)
    {
    foreach (DataRow row in ds.Tables[0].Rows)
    {
    UC_UC_BackOfficeConges _ctl = (UC_UC_BackOfficeConges)Page.LoadControl("UC/UC_BackOfficeConges.ascx");
    //_ctl.set_row(row);
    //_ctl.Visible = true;
    this.Panel1.Controls.Add(_ctl);
    }
    }
    }
    j'ai bien pensé à référencer mon usercontrol dans ma page :

    <%@ Reference Control="~/UC/UC_BackOfficeConges.ascx" %>
    et enfin dans le usercontrol j'ai ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <%@ Control Language="C#" AutoEventWireup="true" CodeFile="UC_BackOfficeConges.ascx.cs" Inherits="UC_UC_BackOfficeConges" %>
    <table>
        <tr>
            <td style="width: 148px">
                <asp:Label ID="lbl_premierjour" runat="server" Text="Label"></asp:Label></td>
            <td style="width: 150px">
                <asp:Label ID="lbl_jourreprise" runat="server" Text="Label"></asp:Label></td>
            <td style="width: 75px">
                <asp:Label ID="lbl_totaltpris" runat="server" Text="Label"></asp:Label></td>
            <td style="width: 75px">
                <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Pics/open.jpg" OnClick="ImageButton1_Click" /></td>
        </tr>
    </table>
    et coté code ça donne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public partial class UC_UC_BackOfficeConges : System.Web.UI.UserControl
    {
        protected void Page_Load(object sender, EventArgs e)
        {
     
        }
        protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {
            Response.Write("fonctionne");
        }
    }
    J'ai utilisé cette technique dans un autre de mes formulaires (exceptés la présence du combobx de pré-selection) et je ne rencontre aucun problème donc je ne comprend vraiment pas pourquoi dans ce cas précis ça ne veut pas marcher

  2. #2
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Bonjour,

    L'évènement n'est pas lancé car ton user control n'est pas chargé. Je pense qu'il faut que tu charges au préalable ton control dans l'évènement init de ta page.

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2003
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2003
    Messages : 197
    Par défaut
    Alors j'ai trouvé une solution !

    J'ai du utiliser deux pages aspx.

    La première affiche ma liste de personne, et lorsque j'en choisis une et que j'appuie sur un bouton prévu pour, j'affiche la liste des mes contrôles utilisateurs dans un panel dans une autre page !

    C'est pas super génial mais il n'y a que comme ça que ça veut bien fonctionner

  4. #4
    Membre Expert
    Avatar de Pongten
    Homme Profil pro
    IT Analyst & Software Developer
    Inscrit en
    Juin 2002
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Analyst & Software Developer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 173
    Par défaut
    Le problème vient du fait que tu injectes tes contrôle dynamiquement.

    Pour que l'évènement click soit pris en compte, les contrôles que tu as injectés dynamiquement doivent être recréés à l'identique, avant la publication des événements, donc idéalement dans le OnInit.

Discussions similaires

  1. Réponses: 1
    Dernier message: 08/12/2010, 21h47
  2. Demander un mot de passe sur "Créer code événement"
    Par FrankOVD dans le forum Sécurité
    Réponses: 1
    Dernier message: 20/01/2010, 15h21
  3. Sur le premier postback rien ne se passe
    Par phfle1 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 27/08/2008, 22h13
  4. Réponses: 4
    Dernier message: 05/01/2008, 23h39
  5. Mot de passe sur une carte à puce!?
    Par Le_Che dans le forum C++Builder
    Réponses: 13
    Dernier message: 20/05/2005, 10h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo