2009-11-19 5 views

Répondre

45

La façon plus simple est de ne pas utiliser la propriété Icône mais plutôt mettre l'icône dans l'en-tête:

<Menu> 
    <MenuItem> 
    <MenuItem.Header> 
     <StackPanel> 
     <Image Width="20" Height="20" Source="/XSoftArt.WPFengine;component/Images/export32x32xp.png" /> 
     <ContentPresenter Content="Reports" /> 
     </StackPanel> 
    </MenuItem.Header> 
    </MenuItem> 
    <MenuItem Header="Export" /> 
    <MenuItem Header="New record" /> 
</Menu> 

Pour ce cas simple, le <ContentPresenter Content="Reports" /> peut être remplacé par un <TextBlock Text="Reports" /> parce que ce ContentPresenter utiliserait présenter la chaîne de toute façon. Pour plus complexe Header=, vous pouvez utiliser le ContentPresenter comme indiqué.

+0

Très bonne réponse, l'exemple fonctionne bien ;-). – Vytas

+13

La réponse ci-dessous est plus facile et utilise la propriété Icon? –

+4

@ AlexHopeO'Connor la réponse ci-dessous est également fausse, si vous lisiez la question que l'OP a posée dans le texte et non dans le titre. De plus vous auriez pu remarquer que la réponse ci-dessous n'est pas différente de celle du code que le PO s'est fourni. Il a clairement demandé comment afficher le texte sous l'image et pas que l'image soit à côté, ci-dessous. C'est pourquoi cette réponse définit un panneau de pile dans l'en-tête avec son orientation par défaut de vertical. –

99

Comment quelque chose le long des lignes de:

<ContextMenu> 
    <MenuItem Header="Reports"> 
     <MenuItem.Icon> 
      <Image Source="/XSoftArt.WPFengine;component/Images/export32x32xp.png"/> 
     </MenuItem.Icon> 
    </MenuItem> 
</ContextMenu> 
+16

Cette réponse devrait être acceptée. – Boy

+0

Ceci est la bonne réponse, merci! La solution fournie par Ray Burns dessine l'image dans la mauvaise position. – Mar

+0

Je suis d'accord. :) Bien joué. –

2

Dans le cas de StackPanel utilisation Étiquette et non la TextBlock depuis que étiquette vous permettra d'avoir les mnémoniques dans le menu, comme _Rapports.

Questions connexes