2017-06-16 4 views
0

私のキャンバスがポインタイベントを取得しない理由がわかりません。
rPicker移動し、私はrPickerをクリックした場合にのみ、ということ XAMLCanvasがポインタイベントを取得しない

<Canvas 
    x:Name="cPad" 
    Canvas.ZIndex="99" 
    Grid.Column="0" 
    PointerPressed="Pad_PointerPressed"> 
    <Rectangle 
     x:Name="rPicker" 
     Width="24" 
     Height="24" 
     Stroke="Black" 
     Fill="White" 
     StrokeThickness="3"/> 
</Canvas> 

C#

private void Pad_PointerPressed(object sender, PointerRoutedEventArgs e) 
{ 
    cPad.CapturePointer(e.Pointer); 
    var point = e.GetCurrentPoint(cPad).Position; 
    Canvas.SetLeft(rPicker, point.X); 
    Canvas.SetTop(rPicker, point.Y); 
    e.Handled = true; 
} 

問題...しかし、私は必要があります。私のコードとXAMLレイアウトの一部の下に〜Pad_PointerPressedは、キャンバス上の任意のポイントに対して実行されます。どうしたらいいですか?

答えて

1

設定PointerPressedイベントを有効にするTransparentからCanvas.Backgroundプロパティ:

<Canvas 
    ... 
    Background="Transparent" 
    > 

    ... 

</Canvas> 
+0

ありがとうございました!私が試してみます –

関連する問題