在Control 类中有virtual函数 public virtual OnDragOver(DragEventArgs e) 方法, 开发人员可以重载这个函数实现拖动过程中大部分功能,我们可以设置参数e.Effect,来决定很多行为,但是有的时候需求经常改变,比如用户可能要求在不同的条件下,光标显示是不同的,比如同样是e.Effect==DragDropEffects.None, 可能drag over到不同的控件下要显示的光标不一样,那怎样在DragOver的过程中改变光标的显示呢?同样在Control类下有函数virtual void OnGiveFeedback(GiveFeedbackEventArgsgfbevent); 通过重载这个函数可以实现该功能,具体过程如下:
在要执行DoDragDrop的对象对应的类里承载
1. 在要执行DoDragDrop的对象对应的类里承载OnGiveFeedback(GiveFeedbackEventArgs gfbevent);
2. 在OnGiveFeedback(GiveFeedbackEve

本文介绍了如何在C#中自定义拖动过程中的光标样式。通过重载Control类的OnDragOver和OnGiveFeedback方法,可以根据不同条件在拖放操作期间改变光标。在OnGiveFeedback事件处理程序中,设置e.UseDefaultCursors为false,并用自定义光标Cursor.Current = MyCursor替换默认光标。
最低0.47元/天 解锁文章
723

被折叠的 条评论
为什么被折叠?



