1

アプリで画像付きのボタンを作成します。

                <Button x:Name="favoriteButton" HorizontalAlignment="Left" VerticalAlignment="Top" Height="72" Width="99" Click="DidPressAddToFavorites" BorderBrush="{x:Null}" Foreground="{x:Null}">
                    <Button.Background>
                        <ImageBrush ImageSource="/Images/favouritesBWIcon@2x.png" Stretch="Uniform"/>
                    </Button.Background>
                </Button>

そして、ユーザーがボタンを押すとすべてのボタンが青色になり、ボタンを離すと再び表示されることに気付きました。それを修正する方法はありますか?

編集:

これはハンドラー メソッドです。

private void DidPressAddToFavorites(object sender, RoutedEventArgs e)
    {
        if (favoriteRep.ExistInFavorites(currentItem) == true)
        {
            this.SetButtonWithImage(favoriteButton, "/Images/favouritesBWIcon@2x.png");
            favoriteRep.RemoveFromFavorites(currentItem);
        }
        else
        {
            this.SetButtonWithImage(favoriteButton, "/Images/favouritesIcon@2x.png");
            favoriteRep.AddToFavorites(currentItem);
        }

    }
4

1 に答える 1

1

状態を追加していないため、Normal、MouseOver、Pressed の 3 つの状態があります。希望どおりに動作させるには、3 つの状態すべてに画像を設定する必要があります。ここで別の方法として、c# から利用できるより良い方法を知りませんでした。必要なことは、さらに 2 つの eventHndlers マウス オーバー イベントとプレス イベントを追加し、両方に画像を設定することです....まあこれを行う別の良い方法は、blend Software からテンプレート編集を試すことです。

于 2013-02-14T06:47:36.433 に答える