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

C# Discussion :

Recherche du bouton cliqué dans un repeater


Sujet :

C#

  1. #1
    Membre habitué Avatar de lou87
    Profil pro
    Inscrit en
    Février 2006
    Messages
    368
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 368
    Points : 128
    Points
    128
    Par défaut Recherche du bouton cliqué dans un repeater
    Bonjour,

    J'ai déjà eu une requête similaire avec dropdownlist dans un repeater, simplement je n'arrive pas à trouver la bonne syntaxe pour effectuer cette action "si tel bouton est cliqué alors...".

    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if ((Button)e.CommandName = ("bt_modif"))
                {
                    Button bt_modification = (Button)e.Item.FindControl("bt_modif");
    Mais il me souligne le (Button)e.CommandName en disant :
    "Impossible de convertir le type 'string' en 'System.Web.UI.Webcontrols.Button'"
    Comment puis-je le formuler ?

    En vous remerciant.

    Bonne journée.
    Programmer c'est comme gravir une montagne...
    Il faut procéder par étapes...
    (? auteur ?)
    Un seul être vous manque et tout est dépeuplé.
    Lamartine (merci chat hotplug ^^)

  2. #2
    Membre actif Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Points : 248
    Points
    248
    Par défaut
    essaie comme ça pour voir:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (((Button)e).CommandName == ("bt_modif"))

  3. #3
    Membre habitué Avatar de lou87
    Profil pro
    Inscrit en
    Février 2006
    Messages
    368
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 368
    Points : 128
    Points
    128
    Par défaut
    Citation Envoyé par gdkenny Voir le message
    essaie comme ça pour voir:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (((Button)e).CommandName == ("bt_modif"))
    Bonjour,

    Je vous remercie pour votre réponse.

    Cependant quand j'essaie votre orthographe, il me met comme erreur :
    Impossible de convertir le type 'System.Web.UI.WebControls.RepeaterEventArgs' en 'System.Web.UI.Webcontrols.Button'.
    Programmer c'est comme gravir une montagne...
    Il faut procéder par étapes...
    (? auteur ?)
    Un seul être vous manque et tout est dépeuplé.
    Lamartine (merci chat hotplug ^^)

  4. #4
    Membre actif Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Points : 248
    Points
    248
    Par défaut
    Déjà, pourquoi récupérer le bouton? quel est le but?

  5. #5
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Avant de vouloir caster e, quel est son type réel ?

  6. #6
    Membre actif Avatar de gdkenny
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2005
    Messages : 251
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par PitMaverick78 Voir le message
    Avant de vouloir caster e, quel est son type réel ?
    indiqué par le message du compilateur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Web.UI.WebControls.RepeaterEventArgs
    Mais j'aurais voulu savoir pourquoi la récupération du bouton est nécessaire... Je pense qu'il y a un gros problème de conception là...

    De plus, si la commande fonctionnait, le bouton serait déjà récupéré, donc pourquoi faire un Findcontrol ensuite pour récupérer la même référence de contrôle??

  7. #7
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par gdkenny Voir le message
    indiqué par le message du compilateur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.Web.UI.WebControls.RepeaterEventArgs
    Mais j'aurais voulu savoir pourquoi la récupération du bouton est nécessaire... Je pense qu'il y a un gros problème de conception là...

    De plus, si la commande fonctionnait, le bouton serait déjà récupéré, donc pourquoi faire un Findcontrol ensuite pour récupérer la même référence de contrôle??
    Oui ici je pense que y'a un problème de méthodologie. Caster un EventArgs en Button, c'est comme considérer une machine à laver comme une voiture, essayer de grimper dessus et attendre qu'elle avance
    Ne serait ce pas plutot sender qu'il faut caster en button?

  8. #8
    Membre habitué Avatar de lou87
    Profil pro
    Inscrit en
    Février 2006
    Messages
    368
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 368
    Points : 128
    Points
    128
    Par défaut
    Bonjour,

    Ce que je recherche à faire c'est de chercher à savoir quel bouton est cliqué, et en fonction du bouton cliqué faire une action.

    En faite j'ai 3 boutons dans le repeater, un qui me permet de modifier les éléments de la page actuel, un second qui me permet de créer une nouvelle donnée d'un type 1 et un autre bouton me permettant de créer une nouvelle donnée de type 2.

    J'espère vous avoir éclairé sur mon problème.

    En vous remerciant.

    Bonne journée.
    Programmer c'est comme gravir une montagne...
    Il faut procéder par étapes...
    (? auteur ?)
    Un seul être vous manque et tout est dépeuplé.
    Lamartine (merci chat hotplug ^^)

  9. #9
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Citation Envoyé par lou87 Voir le message
    Bonjour,

    Ce que je recherche à faire c'est de chercher à savoir quel bouton est cliqué, et en fonction du bouton cliqué faire une action.

    En faite j'ai 3 boutons dans le repeater, un qui me permet de modifier les éléments de la page actuel, un second qui me permet de créer une nouvelle donnée d'un type 1 et un autre bouton me permettant de créer une nouvelle donnée de type 2.

    J'espère vous avoir éclairé sur mon problème.

    En vous remerciant.

    Bonne journée.
    Il suffit de ne pas mettre le même gestionnaire d'évènement pour tous les boutons.
    Exemple:
    Le bouton Edit a son gestionnaire EditButton_Click
    Le bouton Delete a son gestionnaire DeleteButton_Click
    Du coup tu sais l'action que tu veux faire

  10. #10
    Membre habitué Avatar de lou87
    Profil pro
    Inscrit en
    Février 2006
    Messages
    368
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 368
    Points : 128
    Points
    128
    Par défaut
    Oui effectivement ça serait plus simple comme ça...

    Mais il me faut ces boutons pour chaque enregistrement qui sera affiché dans mon repeater...

    Edit : Je suis désolée de vous solliciter souvent ces derniers temps...

    Mais là je demande juste comment savoir dans un repeater lequel de mes trois boutons a été cliqué, et en fonction de ça effectuer une action selon le bouton qui a été cliqué.

    En vous remerciant.
    Programmer c'est comme gravir une montagne...
    Il faut procéder par étapes...
    (? auteur ?)
    Un seul être vous manque et tout est dépeuplé.
    Lamartine (merci chat hotplug ^^)

Discussions similaires

  1. Récupérer caption d'un bouton cliqué dans un JvOutlookBar
    Par kournane dans le forum Composants VCL
    Réponses: 3
    Dernier message: 22/01/2015, 19h24
  2. Obtenir le dernier bouton cliqué dans userform
    Par modenofx dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/11/2011, 19h35
  3. [TPageControl] Connaître bouton cliqué dans Frame?
    Par yetanotherlogin dans le forum Langage
    Réponses: 1
    Dernier message: 21/08/2009, 17h05
  4. Réponses: 4
    Dernier message: 08/05/2007, 09h40
  5. Réponses: 3
    Dernier message: 15/11/2006, 13h57

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