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 :

[WPF] Héritage GridViewColumnHeader


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut [WPF] Héritage GridViewColumnHeader
    Bonjour à tous,

    j'ai créé une classe héritant de ListView afin d'ajouter des fonctionnalités,
    les colonnes sont des classes héritées de GridViewColumn.

    Je voudrais pouvoir utiliser comme header une classe héritée de GridViewColumnHeader. Comment définir le fait que lors de la création du contrôle, il faut créer ma classe hérité de GridViewColumnHeader et non GridViewColumnHeader ?


    Pas de GetContainerForItemOverride ou équivalent ?

    Merci d'avance.

    Cordialement,
    NeoKript

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    J'ai un peu fouillé avec Reflector, et j'ai pas l'impression que ce soit possible... a priori, le seul moyen est de mettre explicitement ton objet custom dans le Header de la colonne :

    Code XAML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <GridViewColumn>
        <GridViewColumn.Header>
            <my:MyCustomGridViewColumnHeader />
        </GridViewColumn.Header>
    </GridViewColumn>

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Salut,

    peut-être qu'il y a un autre moyen alors.

    En fait, je souhaite ajouter un ToggleButton qui permet d'afficher une Popup.
    Cette Popup contiendra en fonction du type de données de la colonne soit un TextBox, une ListBox et ce pour pouvoir filtrer la colonne.

    Une idée de comment je pourrais faire ?

    Merci.

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Tu pourrais gérer le clic sur l'en tête de la colonne (enfin plus exactement tu gères l'évènement ButtonBase.Click au niveau de la ListView, en regardant si e.OriginalSource est un GridViewColumnHeader) pour afficher le popup. Tu peux t'inspirer de ce que j'ai fait ici (notamment la méthode ColumnHeader_Click)

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Salut,

    Je m'étais déjà inspiré de ton exemple pour faire le tri.
    Je voudrais rajouter un toggle button pour pouvoir afficher une popup et rajouter Combobox listbox.. en fonction du type de donnée de la colonne.

    Si je rajoute un ToggleButton dans le style du Header, n'y a t-il pas un moyen de récupérer l'instance de ce Contrôle grâce à Template.FindName ou autre ?

    Merci

    PS : Ce n'est visiblement pas plus possible avec un DataGrid de preciser l'instance du Header.

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Ou sinon refaire un Contrôle qui hérite de Selector ?
    Mais ça risque d'être plus long à réaliser.

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par NeoKript Voir le message
    Si je rajoute un ToggleButton dans le style du Header, n'y a t-il pas un moyen de récupérer l'instance de ce Contrôle grâce à Template.FindName ou autre ?
    Oui bien sûr ; il faut le faire après le chargement du contrôle, en s'abonnant à l'évènement Loaded

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

Discussions similaires

  1. Héritage UserControl WPF
    Par alves.seb dans le forum Windows Presentation Foundation
    Réponses: 6
    Dernier message: 02/05/2013, 17h27
  2. [WPF] Template + héritage = problème
    Par Lutarez dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 04/03/2013, 18h05
  3. l'héritage et wpf
    Par rdh123 dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 11/04/2009, 12h00
  4. Héritage de formulaires WPF
    Par fterf dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 04/03/2009, 17h02
  5. Héritage entre Forms
    Par BarBal dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 17h44

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