我正在开发一个 windows phone 8 XAML 应用程序。
我为 XAML 页面中的多个对象定义了 MouseEnter 事件。(例如两个矩形)。在触发这些对象的 MouseEnter 事件后,我在同一页面上按下了一个按钮。按钮按下不仅会触发它自身的点击事件。它还触发最后输入的 Rectangle 的 MouseEnter 事件。
这个问题可以通过一个只有两个矩形和一个按钮的新项目来重现。此行为并不总是出现,但在触发 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");
}