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 :

[Style] ContextMenu : visuel OK sous win7 mais contraste illisible sous XP lors d'une sélection


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Par défaut [Style] ContextMenu : visuel OK sous win7 mais contraste illisible sous XP lors d'une sélection
    Bonjour,

    J'ai un add in word 2007/2010, en .net 4.0 / WPF, avec la possibilité sur chaque item d'un treeview d'avoir la possibilité d'afficher un ContextMenu / MenuItem , je l'instancie classiquement, sous Windows 7 lorsque je passe ma souris sur le MenuItem il y a un belle effet de sélection bleu très clair transparent avec une écriture toujours noire.
    Sous XP par contre la sélection se passe mal car l'écriture est noire sur un fond (la sélection) bleu foncé !

    bref comment puis-je arranger ca facilement, comment définir un style global pour tous les ContextMenu (soluce idéal), ou comment le définir manuellement... (au pire)


    merci

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Salut,

    Il faut définir le style du MenuItem. Il y a un exemple sur msdn ici :
    http://msdn.microsoft.com/fr-fr/library/ms752296.aspx
    Il y a un exemple pour le style de Menu et un sur le style des MenuItem (c'est ce deuxième exemple qui va t'intéresser).

    A toi ensuite de le définir comme tu veux (bleu clair transparent, etc...).

    Une fois le style défini dans ton application, il sera appliqué à tes MenuItem

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Par défaut
    Merci Binoo pour ton intervention !

    Je m'apercois dans mon code C# que j'ai essayé de forcer pour corriger cet effet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    MenuItem menu;
    MenuItem currentItemFormat = new MenuItem();
    currentItemFormat.Foreground = System.Windows.Media.Brushes.Black;
    currentItemFormat.Background = System.Windows.Media.Brushes.Transparent;
    menu.Foreground = System.Windows.Media.Brushes.Black;
    Mais ca n'a rien changé, je ne sais pas sur quelle propriété taper pour modifier la couleur de sélection...

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    En changeant les valeurs comme tu l'as fait, tu définis les couleurs à l'état normal (pas de survol de l'item, etc).

    Les menuItem ont un style par défaut et quand tu survoles un menuItem, ce dernier verra ces couleurs changées car dans le style des triggers sont définis. Ces dans ces triggers qu'il faut aller jouer.
    Pour les MenuItem d'un ContextMenu, il faut aller voir du côté du ControlTemplate 'SubmenuItem' dans l'exemple donné. Il faut jouer sur les couleurs définies dans le trigger sur la propriété IsHighlighted.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 002
    Par défaut
    binoo
    Ok super explication
    Merci à toi ! bonne journée

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

Discussions similaires

  1. [Débuter] Programme qui fonctionne sous Linux mais qui plante sous Windows 7
    Par p1a2t3 dans le forum Qt Creator
    Réponses: 1
    Dernier message: 22/11/2014, 12h38
  2. Réponses: 1
    Dernier message: 20/02/2012, 09h15
  3. Réponses: 0
    Dernier message: 02/05/2011, 13h22
  4. Réponses: 3
    Dernier message: 10/06/2010, 19h17
  5. Autorun qui marche sous xp, mais qui plante sous 2000
    Par Mauricette dans le forum Windows 2000/Me/98/95
    Réponses: 4
    Dernier message: 11/04/2008, 15h39

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