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] ContextMenu : changer le background de sélection


Sujet :

C#

  1. #1
    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 [WPF] ContextMenu : changer le background de sélection
    Salut,

    Je cherche à changer le Background de sélection du MenuItem d'un ContextMenu et toutes les propriétés que j'ai pu utiliser n'ont eu aucun effet... (peut être par une mauvaise utilisation) :


    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
        <Style x:Key="ContextMenuStyle1" TargetType="{x:Type ContextMenu}" >
          <Setter Property="Template" >
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type ContextMenu}" >
     
                <Border Background="Red" 
                        BorderBrush="{x:Null}" BorderThickness="1,1,1,1" CornerRadius="0,10,10,10" >
                  <StackPanel x:Name="stackp" IsItemsHost="True" Margin="8,8,8,8" />
                </Border>
     
                <ControlTemplate.Triggers>
     
                  <Trigger Property="MenuItem.IsMouseOver" Value="true" >
                    <Setter TargetName="stackp" Property="Background" Value="Red" />
                  </Trigger>
     
                </ControlTemplate.Triggers>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
        </Style>

    Si quelqu'un peut m'aider. Merci d'avance.

    Binoo.

  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
    Par défaut
    Et en changeant le Brush de la bordure dans lequel est le StackPanel ?

  3. #3
    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,

    je pense que c'est sur le StackPanel qu'il faille agir. Comme on peut le voir sur l'image, la bordure contient un item qui lui est sélectionné :



    En fait j'avoue, je fais des essais sur la bordure ainsi que sur le StackPanel... Je ne sais pas vraiment sur quel élément agir et je ne sais pas quelle propriété déclenche la sélection et le changement de Background ( MenuItem.IsMouseOver, MenuItem.IsFocused, MenuItem.IsStylusDirectlyOver, ...).
    Est-ce sur MenuItem ? (ou autre chose comme un ItemsControl...)

    Merci.

Discussions similaires

  1. changer le background d'un TreeView en wpf
    Par Invité dans le forum Windows Presentation Foundation
    Réponses: 0
    Dernier message: 08/02/2014, 22h02
  2. changer le background d'un bouton lors du survol en wpf
    Par Invité dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 17/11/2013, 22h49
  3. [WPF] DatePicker Changer le background color
    Par BenoitM dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 26/10/2012, 13h01
  4. Changer le background d'une cellule de JTable
    Par m@t dans le forum Composants
    Réponses: 8
    Dernier message: 27/11/2005, 17h28
  5. [API win32] Changer le background des menuPopup
    Par dalyusmo dans le forum MFC
    Réponses: 6
    Dernier message: 05/10/2005, 13h35

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