Schaltflächenbild beim Hover oder Klicken ändern

Wie ändere ich das Hintergrundbild eines Buttons beim Hover und beim Click? Die Benutzeroberfläche von Visual Studio scheint keine einfache Möglichkeit zu bieten. Momentan scheint das Standardverhalten mein Bild durch eine Volltonfarbe zu ersetzen, was furchtbar aussieht.

Alles was ich bisher habe ist die Button Basis:

<code>    <Button Content="" Height="75" VerticalAlignment="Center" Width="75" HorizontalAlignment="Center" ClickMode="Press">
        <Button.Background>
            <ImageBrush ImageSource="../data/images/icons/skill_icon_0.png"/>
        </Button.Background>
    </Button>
</code>

Ich habe versucht, Ereignisse zu verarbeiten und sie manuell festzulegen, aber es funktioniert nicht für "Gedrückt / Veröffentlicht":

<code>        Button skillButton = new Button();
        skillButton.Width = 75;
        skillButton.Height = 75;
        skillButton.ClickMode = ClickMode.Press;
        skillButton.Background = GetIconImage(iconIndex, 0);
        skillButton.PointerEntered += 
            (object sender, Windows.UI.Xaml.Input.PointerEventArgs e) => {
                skillButton.Background = GetIconImage(iconIndex, 1);
            };
        skillButton.PointerExited +=
            (object sender, Windows.UI.Xaml.Input.PointerEventArgs e) => {
                skillButton.Background = GetIconImage(iconIndex, 0);
            };
        skillButton.PointerPressed +=
            (object sender, Windows.UI.Xaml.Input.PointerEventArgs e) => {
                skillButton.Background = GetIconImage(iconIndex, 2);
            };
        skillButton.PointerReleased +=
            (object sender, Windows.UI.Xaml.Input.PointerEventArgs e) => {
                if (skillButton.FocusState == FocusState.Pointer)
                    skillButton.Background = GetIconImage(iconIndex, 1);
                else skillButton.Background = GetIconImage(iconIndex, 0);
            };
</code>

Antworten auf die Frage(6)

Ihre Antwort auf die Frage