<UserControl x:Class="Silverlight20.Interactive.Mouse"
xmlns="
http://
scheR_170_11845@a
s.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="
http://
scheR_170_11845@a
s.microsoft.com/winfx/2006/xaml">
<!--路由事件是一种可以针对元素树中的多个侦听器(而不是仅针对引发该事件的对象)
调用处理程序的事件-->
<!--
Mou
SELEftButtonDown,Mou
SELEftButtonUp和MouseMove均为向上冒泡的路由事件
本例的事件路由为:Ellipse -> StackPanel -> UserControl 或 Rectangle -> Canvas -> StackPanel -> UserControl
如果不想向上冒泡,则可以使用 MouseButtonEventArg
s.Handled = true 告知事件已被处理
-->
<StackPanel HorizontalAlignment="Left" Mou
SELEftButtonDown="StackPanel_Mou
SELEftButtonDown" >
<!--
MouseEnter - 鼠标进入时触发的事件(显然,此事件不能冒泡)
Mou
SELEave - 鼠标离开时触发的事件(显然,此事件不能冒泡)
Mou
SELEftButtonDown - 鼠标左键单击按下时触发的事件
Mou
SELEftButtonUp - 鼠标左键单击按下并放开时触发的事件
MouseMove - 鼠标移动时触发的事件
-->
<Ellipse x:Name="ellipse" Width="200" Height="100" Fill="Red" Margin="5"
MouseEnter="ellipse_MouseEnter"
Mou
SELEave="ellipse_Mou
SELEave"
Mou
SELEftButtonDown="ellipse_Mou
SELEftButtonDown"
Mou
SELEftButtonUp="ellipse_Mou
SELEftButtonUp"
>
</Ellipse>
<Canvas Margin="5">
<!--用于演示拖放的矩形-->
<Rectangle x:Name="rectangle" Fill="Blue" Width="50" Height="50"
Mou
SELEftButtonDown="rectangle_Mou
SELEftButtonDown"
Mou
SELEftButtonUp="rectangle_Mou
SELEftButtonUp"
MouseMove="rectangle_MouseMove"
/>
</Canvas>
</StackPanel>
</UserControl>