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 :

TemplateField+ButtonImage et évenement Rowcommand


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut TemplateField+ButtonImage et évenement Rowcommand
    Bonsoir tout le monde !

    Je suis confronté à un petit problème.

    Dans un gridview je désire ajouter une confirmation en javascript lors d'une suppression d'un élément.

    J'ai donc ajouter un templatefield à mon gridview et j'ai ajouté un ButtonImage.

    Après m'être documenté , j'ai vu qu'il fallait passé par l'évenement Rowcommand pour pouvoir exploiter mon bouton image.

    Mon problème est que lorsque je clique sur mon bouton je ne passe jamais par l'événement Rowcommand de mon gridview (vu avec le mode debug) et je ne vois pas ce qu'il ne va pas.

    Si qqn pouvait me mettre sur le voix . Merci d'avance

    Mon code pour le templatefield et le ButtonImage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <asp:TemplateField>
         <ItemTemplate>
               &nbsp;<asp:ImageButton ID="ImageButton_delete_user" runat="server" CommandArgument='<%# Bind("code_user") %>'
                            CommandName="Delete_User" ImageUrl="~/App_Themes/Gestion/Images/delete.gif" CausesValidation="False" />
         </ItemTemplate>
         <ItemStyle BackColor="White" />
         <HeaderStyle BackColor="White" BorderStyle="None" BorderWidth="0px" />
    </asp:TemplateField>

    Mon code behind :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    protected void GridView_list_user_RowCommand(object sender, GridViewCommandEventArgs e)
    {
         if (e.CommandName == "Delete_User")
         {
                // Suppression de l'utilisateur
                ((user_management)Session["user_management"]).suppression_user(Convert.ToInt32(e.CommandArgument));
         }
     
    }

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    T'as fonction ne semble pas abonné à ton événement

    Sub ... Handles ...

  3. #3
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Bon en regardant un peu j'ai réalisé le code suivant qui fonctionne bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    // Evenenement lors de la création des lignes du gridview
        protected void GridView_list_user_RowCreated(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow) // Test ligne ou header du gridview
            {
                ImageButton image_button_delete = (ImageButton)e.Row.FindControl("ImageButton_delete_user");
                image_button_delete.Attributes.Add("onclick", "javascript:return confirm('Etes-vous sûr de vouloir supprimer cet utilisateur?');");
                // Abonnement du bouton à l'événement
                image_button_delete.Click += new ImageClickEventHandler(image_button_supp_user_clic);
            }
        }
     
        private void image_button_supp_user_clic(object sender, EventArgs e)
        {
     
            ImageButton button_delete_user = (ImageButton)sender;
     
            //
            GridViewRow row = GridView_list_user.SelectedRow;
            Label_test.Text = row.FindControl("ImageButton_delete_user").ID.ToString();
     
        }
    Merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. GridView, UpdatePanel, Templatefield et RowCommand
    Par osyks dans le forum ASP.NET
    Réponses: 0
    Dernier message: 20/07/2009, 11h45
  2. Réponses: 8
    Dernier message: 12/05/2005, 08h16
  3. Réponses: 6
    Dernier message: 02/05/2005, 14h00
  4. [VB6]Initialiser une variable Static dans un évenement
    Par loverdose dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 20/01/2005, 14h57
  5. Réponses: 4
    Dernier message: 21/05/2004, 11h24

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