0

私のアプリには、小さな画像のキャンバスがあります(キャンバスのスペース全体を占有していません)。ユーザーが画像をクリックしてキャンバス内にドラッグすると、パスが黒い線でトレースされます。ここまですべてが機能します。ここで、ユーザーがマウスのホールドを解除するとすぐにパスを削除したいと考えています。マウスのリリースを検出するために使用MouseLeftButtonUpしています。canvas今の問題は、これがランダムに機能していることです。発火する場合と発火しない場合があります。親切に助けてください。

XAML:

 <Canvas Height="400" HorizontalAlignment="Center"  Margin="10,10,0,0" Name="canvas1" VerticalAlignment="Center" Background="Aqua"  Width="400">
 <Image Canvas.ZIndex="30" Canvas.Left="10" Canvas.Top="10" Height="20" Name="dot1" Stretch="Uniform" Width="20" Source="/BoxIt;component/Images/dot.png" MouseLeftButtonDown="dot_MouseLeftButtonDown" />
 </Canvas>

C#:

 this.canvas1.MouseMove += new MouseEventHandler(canvas1_MouseMove);
 this.canvas1.MouseLeftButtonUp += new MouseButtonEventHandler(canvas1_MouseLeftButtonUp);

C# のイベントハンドラ:

 void canvas1_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
    {
       // code to delete the path
    }
4

1 に答える 1

3

Windows Phoneでは、マウス関連のイベントの代わりに、 TapHoldおよび Manipulation* メソッドを使用することをお勧めします。

詳しくはこちらをお読みください。

于 2012-09-11T14:18:43.597 に答える