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 :

[C#]Comment détecter les appuis sur bouton avant le page_Load() ?


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de AiSpirit
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Par défaut [C#]Comment détecter les appuis sur bouton avant le page_Load() ?
    Bonjour, j'aimerais pouvoir savoir qu'un appui sur un bouton a été effectué et est la cause du postback.

    En effet, pour le moment, j'ai le schéma
    - page_load en entier
    - action bouton
    - page_load en entier

    et j'aimerais avoir
    - page_load minimale, car elle sera relancée
    - action bouton
    - page_load en entier

    Merci

  2. #2
    Membre chevronné
    Avatar de CORBASE
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Par défaut
    Il te suffit d'utiliser la propriété isPostBack dans ton page_load.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if (Page.isPostBack)
    {
         // Ici tu met le page load lorsque la page est un retour de postback
         // Dans ton cas précis, ce que tu veux afficher après le bouton
    }
    else
    {
         // Ton page_load "minimal" comme tu dis.
    }

    Voilà, je sais pas si cela répond à ta demande ...
    Rien n'est impossible, c'est juste une question de temps
    C'est quoi le PureBasic ?

  3. #3
    Membre averti Avatar de AiSpirit
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Par défaut
    En fait, non .
    Ce qu'il me faut, c'est savoir qu'elle est la cause du post back.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Par défaut
    Salut,

    Tu ne peux pas le savoir sans mettre les mains dans le fonctionnement interne d'asp.net (aller lire dans ses champs cachés, comparer des identifiants de contrôles coté client etc...) , ce qui est à la fois moche et sans garantie de fonctionner encore sur la prochaine version d'asp.net.

    Cela dit tu cherches à faire quoi , pourquoi as tu besoin de savoir quel controle a effectué le postback ? Le fonctionnement d'une page asp.net est assez bien fait pour n'avoir pas généralement à essayer de le contourner.

  5. #5
    Membre averti Avatar de AiSpirit
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Par défaut
    En fait, j'ai des boutons dont le but est de changer de mode.
    et en fonction de ce mode, page_load effectue des actions différentes.

    Donc le problème est :
    mode = m
    clique boutton (mode +1)
    page load : mode = m (au lieu de mode = m+1)
    action bouton: mode = m+1

    Bien sur, les m et m+1, c'est pour faire simple.

  6. #6
    Membre chevronné
    Avatar de CORBASE
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Par défaut
    De toute façon, regarde les propriété de l'objet Sender, en général on arrive à trouver ce que l'on veut via cet objet.

    Enfin pour ma part ...

    Sinon, tu as une autre manière, tu créé une variable de session dans laquelle tu sotcke l'id du controle qui à été appeller, comme ça tu peux savoir quel objet à été actionner, meme après un postback
    Rien n'est impossible, c'est juste une question de temps
    C'est quoi le PureBasic ?

  7. #7
    Membre averti Avatar de AiSpirit
    Inscrit en
    Mai 2005
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 41
    Par défaut
    Sinon, tu as une autre manière, tu créé une variable de session dans laquelle tu sotcke l'id du controle qui à été appeller, comme ça tu peux savoir quel objet à été actionner, meme après un postback
    Ben non, justemement :
    l'ajout de l'ID dans la session se fera lors de l'action du boutton, et donc après le page_load() ... voilà le pb.

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

Discussions similaires

  1. Comment détecter l'appui sur une touche du clavier?
    Par Cygnus Saint dans le forum C++
    Réponses: 2
    Dernier message: 17/09/2009, 20h31
  2. Comment détecter l'appui sur une touche hors de l'application ?
    Par freezerhm dans le forum Windows Forms
    Réponses: 6
    Dernier message: 06/04/2008, 22h53
  3. [C#] Comment détecter l'appui sur 'Entrée' ?
    Par ArHacKnIdE dans le forum Windows Forms
    Réponses: 6
    Dernier message: 10/01/2008, 17h05
  4. [FF] Comment détecter l'appuie sur "Enter" dans un textarea ?
    Par djuju dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/03/2007, 19h45
  5. Réponses: 2
    Dernier message: 20/03/2006, 18h05

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