私はこの問題が発生したが、私のボタンはのItemsControlによって動的に作成されたため、受け入れ答えを使用することができませんでした、そしてからのAddHandlerを呼び出すことは良い場所はありませんでしたしています。
代わりに、私のサブ分類Windows.UI.Xaml.Controls.Button:
public sealed class PressAndHoldButton : Button
{
public event EventHandler PointerPressPreview = delegate { };
protected override void OnPointerPressed(PointerRoutedEventArgs e)
{
PointerPressPreview(this, EventArgs.Empty);
base.OnPointerPressed(e);
}
}
今あなたがしたい場合は、かかる制御は、代わりにPointerPressed
<local:PressAndHoldButton
x:Name="Somebutton"
Width="100"
Height="100"
PointerPressPreview="Somebutton_PointerPressed"/>
のPointerPressPreviewに結合することができ、オーバーライドされたOnPointerPressedメソッドに追加のロジックを追加して、左クリックでイベントを発生させるか、右クリックするだけで済みます。あなたが望むものなら、なんでも。
@ACBこれは単なる単純なボタンです。私はそれがあなたを助ける場合のコードを追加しました – xkillah