WPF 自定义鼠标 Cursor

概念: 任何元素使用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

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值