导出 (0) 打印
全部展开
展开 最小化
此文章由人工翻译。 将光标移到文章的句子上,以查看原文。
译文
原文

UIElement.MouseLeave 事件

在鼠标指针离开此元素的边界时发生。

命名空间:  System.Windows
程序集:  PresentationCore(在 PresentationCore.dll 中)
用于 XAML 的 XMLNS:http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

public event MouseEventHandler MouseLeave
<object MouseLeave="MouseEventHandler" .../>

实现

IInputElement.MouseLeave

标识符字段

MouseLeaveEvent

路由策略

直接

delegate

MouseEventHandler

  • 重写 OnMouseLeave 以在派生类中实现此事件的类处理。

MouseLeave 是一个使用直接事件处理路由策略的路由事件 直接路由事件不在路由过程中引发,而是在引发它们的元素中处理。 不过,它们启用了其他方面的路由事件行为,如样式中的事件触发器。

虽然 MouseLeave 可以跟踪鼠标指针何时离开元素边界,但此事件能够更确切地报告此元素的 IsMouseOver 属性值已从 true 更改为 false

UIElement 作为基元素继承时,此事件会为该类的 Mouse.MouseLeave 附加事件创建一个别名,以便 MouseLeave 包含在该类的成员列表中。 附加到 MouseLeave 事件的事件处理程序将附加到基础 Mouse.MouseLeave 附加事件,并接收同一事件数据实例。

This example shows how to change the color of an element as the mouse pointer enters and leaves the area occupied by the element.

This example consists of a Extensible Application Markup Language (XAML) file and a code-behind file.

注意注意

This example demonstrates how to use events, but the recommended way to achieve this same effect is to use a Trigger in a style. For more information, see 样式设置和模板化.

The following XAML creates the user interface, which consists of Border around a TextBlock, and attaches the MouseEnter and MouseLeave event handlers to the Border.


<StackPanel>
  <Border MouseEnter="OnMouseEnterHandler"
          MouseLeave="OnMouseLeaveHandler"
          Name="border1" Margin="10"
          BorderThickness="1"
          BorderBrush="Black"
          VerticalAlignment="Center"
          Width="300" Height="100">
    <Label Margin="10" FontSize="14"
           HorizontalAlignment="Center">Move Cursor Over Me</Label>
  </Border>
</StackPanel>


The following code behind creates the MouseEnter and MouseLeave event handlers. When the mouse pointer enters the Border, the background of the Border is changed to red. When the mouse pointer leaves the Border, the background of the Border is changed back to white.


public partial class Window1 : Window
{
    public Window1()
    {
        InitializeComponent();
    }

    // raised when mouse cursor enters the area occupied by the element
    void OnMouseEnterHandler(object sender, MouseEventArgs e)
    {
        border1.Background = Brushes.Red;
    }

    // raised when mouse cursor leaves the area occupied by the element
    void OnMouseLeaveHandler(object sender, MouseEventArgs e)
    {
        border1.Background = Brushes.White;
    }
}


.NET Framework

受以下版本支持:4、3.5、3.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

社区附加资源

添加
显示:
© 2015 Microsoft