概念: 任何元素使用Cursor 属性设置鼠标指针,该属性继承自FrameworkElement类
每个光标都由System.Windows.Input.Cursor对象表示,使用当前系统光标的方法是使用Cursors类(System.Windows.Input命名空间)的静态属性。它包括繁忙、点击等基本鼠标。
C# 代码形式如下:
this.Cursor = Cursors.Wait;
把鼠标放上去即可改变
Cursors类的属性获取在计算机本地的鼠标光标,如果用户定义一套(比如主题)自己的光标,那么Cursors.Wait的鼠标形状也会变
XAML代码形式如下:
<Button Cursor="Wait">Help</Button>
使用ForceCursor父元素可以覆盖子元素的鼠标设置
Mouse.OverrideCursor 属性 该属性覆盖所有元素的鼠标设置
删除所有鼠标设置 可以 Mouse.OverrideCursor = null
光标可以使用.cur光标文件 或者.ani动画光标文件
为了使用自定义的光标,需要为Cursor对象的构造函数传递光标文件的文件名或包含光标数据的流;
Cursor customCursor = new Cursor(Path.Combine(applicationDir,"stopwatch.ani"));
this.Cursor = customCursor;
Cursor对象不直接支持URI资源语法,为应用程序添加光标文件作为资源,然后将该资源作为可以使用于Cursor对象的数据流返回,通过使用Application.GetResourceStream()方式;
StreamResourceInfo sri = Application.GetResourceStream(new Uri("stopwatch.ani",UriKind.Relative));
Cursor customCursor = new Cursor(sri.Stream);
this.cursor = customCursor;
上面代码把.ani的Build Action设置为 Resource