5

Windows Phone 8 XAML アプリケーションを開発しています。

XAML ページのいくつかのオブジェクトに対して MouseEnter イベントを定義しました。(たとえば、2 つの長方形)。これらのオブジェクトの MouseEnter イベントをトリガーした後、同じページのボタンを押します。ボタンを押すと、それ自体のクリックイベントがトリガーされるだけではありません。また、最後に入力された Rectangle の MouseEnter イベントもトリガーします。

この問題は、2 つの Rectangle と 1 つの Button だけを使用した新しいプロジェクトで再現できます。この動作は常に発生するわけではありませんが、Rectangles の MouseEnter イベントを数回トリガーした後に確認できます。

私の XAML オブジェクトは次のとおりです。

<Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="100"
           Margin="102,306,0,0" Stroke="Black" 
           VerticalAlignment="Top" Width="100" 
           MouseEnter="Rectangle_MouseEnter"/>

<Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="100" 
           Margin="314,306,0,0" Stroke="Black" 
           VerticalAlignment="Top" Width="100"
           MouseEnter="Rectangle_MouseEnter"/>

<Button Content="Button" HorizontalAlignment="Left"
        Margin="256,481,0,0" VerticalAlignment="Top" Click="Button_Click"/>

コード ビハインドは次のようになります。

private void Rectangle_MouseEnter(object sender, 
                                  System.Windows.Input.MouseEventArgs e)
{
    Debug.WriteLine("Rectangle_MouseEnter");
}

private void Button_Click(object sender, RoutedEventArgs e)
{
    Debug.WriteLine("Button_Click");
}
4

1 に答える 1

-1

Windows Pone および Windows 8 アプリでは、マウス イベントの代わりにタップ イベントを使用する方が良いと思います。それが問題かもしれません。このリンクを見てください:

http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.uielement.tapped.aspx

于 2013-11-13T13:04:23.050 に答える