2009-03-10 5 views
4

Je travaille sur la barre d'outils pour une application WPF. Le jeu d'icônes que nous utilisons possède des icônes séparées pour les états normal, stationnaire et désactivé, et j'aimerais les utiliser. Je me demandais quelle est la solution la plus simple/normale de faire cela? Ma première pensée était de créer un contrôle d'utilisateur "ImageButton" avec les propriétés NormalImage, ActiveImage, DisabledImage, qui contenait les déclencheurs nécessaires pour IsMouseOver et IsEnabled. Cela fonctionne, mais les boutons perdent malheureusement le style du bouton de la barre d'outils, c'est-à-dire qu'ils obtiennent les bordures de boutons standard, aucun arrière-plan bleu au survol de la souris et sont trop rapprochés l'un de l'autre. Si je comprends bien, c'est parce que le contrôle de barre d'outils de WPF remplace le style pour les éléments Button enfant, et ne parvient pas à restyler mes boutons parce qu'ils sont à l'intérieur d'un ImageButton parent.Quelle est la meilleure façon de créer des boutons de barre d'outils avec des images actives/désactivées distinctes dans WPF?

Est-ce que quelqu'un a des suggestions pour que cela fonctionne? Je suis un peu nouveau à WPF, donc je ne ferais que l'aborder de manière rétrograde.

+0

Bien que cela ne réponde pas à votre question, je préfère toujours ne pas avoir d'images hover et disabled séparées pour les barres d'outils. Surtout avec WPF, vous pouvez avoir de beaux effets sans avoir à gérer (et synchroniser) chaque image trois fois, et votre fichier de ressources est également beaucoup plus petit. – OregonGhost

Répondre

3

Vous pouvez baser le style de votre Button sur le Style obtenu par ToolBar.ButtonStyleKey. Par exemple:

<Style TargetType="Button" BasedOn="{StaticResource {x:Static ToolBar.ButtonStyleKey}}"> 
    <Setter Property="MinHeight" Value="40"/> 
</Style> 
+0

Cela fonctionne magnifiquement, merci. Comme je n'ai pas besoin de personnaliser l'apparence du bouton au-delà de la modification de l'image, même en changeant l'élément

Questions connexes