élément de menu WPF avec l'image
Comment définir MenuItem.Icon afin que le texte MenuItemHeader serait placé sous l'image de l'élément de menu? Merci pour l'aide!
élément de menu WPF avec l'image
Comment définir MenuItem.Icon afin que le texte MenuItemHeader serait placé sous l'image de l'élément de menu? Merci pour l'aide!
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é.
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>
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.
Très bonne réponse, l'exemple fonctionne bien ;-). – Vytas
La réponse ci-dessous est plus facile et utilise la propriété Icon? –
@ 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. –