あなたはそれを行うにはポインタイベントを使用することができますが、あなたはまた、UIはとどまることを確認するために、以前に扱わポインタイベントを処理できるようにする必要がありますように手動AddHandler
メソッドを介してハンドラを追加する必要があります一貫している。
あなたはこのコードを使用することができます:UIElement.PointerEnteredEvent
、UIElement.PointerExitedEvent
、UIElement.PointerCaptureLostEvent
、UIElement.PointerCanceledEvent
、UIElement.PointerReleasedEvent
:
MyButton.AddHandler(
UIElement.PointerEnteredEvent, // The target event
new PointerEventHandler((s, e) =>
{
// Handle your background here
}),
true); // Include previously handled events
は、これらはあなたが使用する必要がありますイベントです。
ボタンの背景は、ソースイベントに応じて調整する必要があります。これらのメソッドの一部は、ユーザーがボタンを押すときに開始されるため、ボタンが離されたときに開始されるためです。
編集:ここにボタンが離されたときのハンドラを追加する例を示します
foreach (RoutedEvent target in new[] { UIElement.PointerExitedEvent, UIElement.PointerCaptureLostEvent,
UIElement.PointerCanceledEvent, UIElement.PointerReleasedEvent })
{
MyButton.AddHandler(target, new PointerRoutedEventArgs((s, e) =>
{
MyButton.Background = new SolidColorBrush(Colors.Red);
}), true);
}
は別のブラシ(ボタンが押された)とPointerPressedEvent
ために同じことを行うと、あなたはすべてする必要がありますセット。
だからが押下と押されていないピンクのときと、ボタンが白になりたいですか? – AVK