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 :

[WPF][C#] appeler un évenement dans un template


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Par défaut [WPF][C#] appeler un évenement dans un template
    Bonjour,

    j'ai une question qui me reste sans reponses malgrès mes nombreuses recherches.

    J'ai un crée un UserControl qui contient juste un treeview.

    J'ai crée un ResourceDictionnary qui contient le skin du logiciel.

    Seulement mes treeview items ne doivent pas etre composés d'un label, mais d'un label et d'un bouton.

    J'ai donc crée un controlTemplate dans mon resource dictionnary dans lequel je definis qu'un TreeviewItem est composé d'un stackPanel avec un label et un bouton.

    Seulement je souhaiterai attacher un évenement au clic de ce bouton.

    Mais je n'ai actuellement pas trop de pistes.

    J'espere que j'ai été assez clair sur la description du probleme.

    En gros c'est comment attacher une méthode au clic d'un bouton définie dans un controlTemplate

    Merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Par défaut
    Je met mon code XAML en esperant que ca puisse inspirer certains

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <ControlTemplate TargetType="{x:Type TreeViewItem}" x:Key="TreeViewItemGroupe">
            <StackPanel Orientation="Horizontal" x:Name="_stackPanelTreeViewItemGroup">
                <Label x:Name="_labelChoiseGroupe" Width="{Binding Path=SelectedItem.Width, ElementName=_listboxProposition, Mode=Default}" Foreground="Green" Content="{Binding Path=SelectedItem.Content, ElementName=_listboxProposition, Mode=Default}">
                </Label>
                <Button x:Name="_buttonDeleteGroupe" Width="12" Height="12" Template="{StaticResource ButtonDelete}">
                    <EventSetter Event="Button.Click" Handler="Wpf.UserControls.treeViewFiltrageControl.ouverturePopup" />
                </Button>
            </StackPanel>
        </ControlTemplate>
    et quand j'execute, il me met cet exception


    Le type « Delegate » n’a pas de classe TypeConverter publique.

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

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Pourquoi tu fais pas juste:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <Button x:Name="_buttonDeleteGroupe" Width="12" Height="12" Template="{StaticResource ButtonDelete}" Click="TonEvent" />

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/02/2013, 18h04
  2. [1.x] appelle d'une fonction dans le template
    Par scarabe088 dans le forum Symfony
    Réponses: 1
    Dernier message: 13/09/2011, 21h56
  3. Réponses: 4
    Dernier message: 27/04/2011, 15h27
  4. Réponses: 3
    Dernier message: 02/02/2010, 06h46
  5. [ZF 1.9] appeler un actionStack dans un template
    Par guiyomh dans le forum Autres composants
    Réponses: 3
    Dernier message: 09/12/2009, 14h23

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