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

Windows Presentation Foundation Discussion :

[XAML] Action sur un objet quelconque


Sujet :

Windows Presentation Foundation

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut [XAML] Action sur un objet quelconque
    Bonjour,
    Débutant en XAML, j'aimerais savoir s'il est possible de lancer une action suite à un clic de souris sur un objet graphique quelconque (pas un Button), comme un cube par exemple, et si c'est le cas, de quelle manière.
    Je crois qu'il faut utiliser des Event mais je ne sais pas comment m'y prendre concrètement.
    À noter que mon objet graphique est défini dans un UserControl.
    Merci d'avance !

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Il va te falloir utiliser un trigger et lui indiquer que c'est lors du click que tu veux faire une action particulière


    Tu as jetté un oeil à mon article sur WPF: http://morpheus.developpez.com/windo...on-foundation/ ?
    Cela pourrait t'aider


    A+

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Merci pour ta réponse.
    J'avais bien regardé ton article sur WPF, mais le EventTrigger que tu mets dans ton exemple (p.18) concerne un Button, donc le RoutedEvent "Button.Click" existe bien. Cependant, je doute que cette méthode "Button.Click" existe pour un objet quelconque.
    C'est peut-être là que je me suis mal exprimé : je veux créer un objet graphique cliquable, et quand ce clic intervient je lance une méthode appropriée. D'ailleurs, comment choisir cette méthode à lancer une fois l'événement survenu, la propriété "Actions" de l'EventTrigger ne proposant que des animations ou storyboards ?

    Merci...(j'espère que j'ai été clair )

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par Belgarath Le Sorcier
    Merci pour ta réponse.
    J'avais bien regardé ton article sur WPF, mais le EventTrigger que tu mets dans ton exemple (p.18) concerne un Button, donc le RoutedEvent "Button.Click" existe bien. Cependant, je doute
    que cette méthode "Button.Click" existe pour un objet quelconque.
    OK mais il me semble que Control.Click existe: à tester

    C'est peut-être là que je me suis mal exprimé : je veux créer un objet graphique cliquable, et quand ce clic intervient je lance une méthode appropriée.
    Alors sur ton controle, pkoi ne déclares-tu pas tout simplement un évènement Click ?
    Sur ton contrôle, tu dois avoir avec à OnMouseDown: il te suffit donc de déclarer un event que tu déclenchera dans ce OnMouseDown.

    Ex: Sur ton controle:

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public delegate void ClickHandler();
    public event ClickHandler Click;
     
     
    protected OnMouseDown(.....)
    {
         if (Click != null)
         {
               Click();
         }
    }


    Ensuite, dans la page où tu utilise ton contrôle, tu auras juste à faire:

    toncontrole.Click += .....



    Voila l'idée


    A+

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Merci infiniment, je vais essayer ça .

Discussions similaires

  1. Appliquer une action sur plusieurs objets en même temps
    Par Aminerman dans le forum ActionScript 3
    Réponses: 2
    Dernier message: 27/10/2011, 16h00
  2. [WD-2003] Appliquer une action sur un objet sans le sélectionner
    Par formabox dans le forum VBA Word
    Réponses: 4
    Dernier message: 22/04/2009, 00h15
  3. [Powerpoint] action sur 2 objets
    Par chyplie dans le forum Powerpoint
    Réponses: 2
    Dernier message: 03/06/2006, 20h01
  4. action sur objet graphique???
    Par ricardvince dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 27/04/2006, 18h53
  5. [Flash MX] Action sur un bouton
    Par WriteLN dans le forum Flash
    Réponses: 9
    Dernier message: 20/10/2003, 14h01

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