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

Silverlight Discussion :

Pointer correctement un élément dans un contrôle perso


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 17
    Par défaut Pointer correctement un élément dans un contrôle perso
    Bonjour à tous,

    J'ai crée un contrôle personnalisé qui fait office de bouton. J'ai un fichier Generic.xaml qui contient le template de mon bouton personnalisé.J'ai ma classe boutonPerso.vb qui sur le new assigne le template et les evénements:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
       Public Sub New()
                Me.isTemplateApplied = False
     
                Me.DefaultStyleKey = GetType(BoutonPerso)
     
                AddHandler Me.MouseEnter, AddressOf OnMouseEnter
                AddHandler Me.MouseLeave, AddressOf OnMouseLeave
                AddHandler Me.MouseLeftButtonUp, AddressOf OnMouseLeftButtonUp
                AddHandler Me.MouseLeftButtonDown, AddressOf OnMouseLeftButtonDown
     
            End Sub
    Ma question:

    J'ai inséré un autre bouton à l'intérieur de mon BoutonPerso (dans le template, Generic.xaml) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Button HorizontalAlignment="Right" VerticalAlignment="top" Height="10" Width="10" Margin="5" Background="White" x:Name="BoutonCloture" ></Button>
    Comment puis le pointer depuis le code? et est ce possible? Je souhaiterai lui rajouter un evenement à lui aussi?
    J'ai exploré les propriétés sans succès. Evidemment un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AddHandler Me.BoutonCloture.MouseLeftButtonDown, AddressOf OnMouseLeftButtonDown
    ne fonctionne pas

    Merci de vos éclairages.!

    Nico

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 17
    Par défaut Precisions
    J'applique le control template dans une fonction , et en rajoutant ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim MonElement As System.Windows.Controls.Button = Me.GetTemplateChild("BoutonCloture")
    j'arrive à pointer mon bouton, mais pas à le faire pointer vers une fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AddHandler MonElement.MouseLeftButtonDown, AddressOf test
    ne marche pas

  3. #3
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Il faut caster le retour de GetTemplateChild en Button (je connais pas la syntaxe en VB (CType ?)).

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 17
    Par défaut J'ai tenté
    J'ai bien tenté ça mais sans succes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AddHandler CType(Me.GetTemplateChild("BoutonCloture"), System.Windows.Controls.Button).MouseLeftButtonDown, AddressOf test
    Je n'arrive jamais sur test()!

  5. #5
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    C'est parce que c'est l'évènement Click sur un bouton.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 17
    Par défaut c'est bon
    C'est bon jai enlevé les parametres de ma fonction test(), ça passe là! Merci à toi

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 17
    Par défaut Mieux
    C'est mieux, du moins un evenement est lancé, mais curieusement il n'arrive pas sur test() dans le debug. Il se melangerait avec les evenements du bouton principal? La jai un comportement incohérent (ecran devient tout blanc) sans erreur en sortie

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

Discussions similaires

  1. Contrôle perso ne s'affiche pas dans le designer
    Par tomlev dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 18/06/2008, 14h29
  2. Réponses: 1
    Dernier message: 20/03/2008, 15h02
  3. [ASP.NET C# 3.5] Linkbuttons dans contrôle perso
    Par chrix dans le forum ASP.NET
    Réponses: 1
    Dernier message: 23/02/2008, 19h10
  4. Réponses: 0
    Dernier message: 23/02/2008, 13h49
  5. Correction pour ajouté un élément dans une liste
    Par Rifton007 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 27/01/2007, 11h09

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