DataGridView到DataGridView的拖拽的例子
遇到了一个问题,需要将DataGridView的一行拖到另一个DataGridView中。搜索了一下,找到了风卷残云的文章C#如何实现DataGridView到DataGridView的拖拽。写的很详细。
由于当时手头的程序比较麻烦,Datagridview有好几个,遇到了一点问题,最后为了narrow down问题所在,根据风卷残云的文章做了个小例子。通过这个小例子的实验,不但完成了功能,还通过这改改,那改改的学到了一点东西。把例子放在这里,如果大家遇到了同样的问题,希望这个例子程序能最快速的帮助你解决掉。
在做拖拽的时候,如果鼠标没有变成下图的样子,说明可能没有实现mousedown事件。
如果在目标Grid上,鼠标没有变成下图的样子,说明可能没有设置AllowDrop属性为true。
另外,DragDrop, DragOver, DragLeave, DragEnter看起来不太容易区分。MSDN解释如下:
DragDrop事件:在drag-and-drop操作结束之后触发。
DragEnter事件:拖拽到另一个控件之上的时候,那么这个控件的DragEnter事件被触发。
DragOver事件:拽了半天,最后还留在那个开始拖拽的控件上的时候,DragOver事件被触发。
DragLeave事件:当你拖拽的时候,一旦离开这个控件的范围,这个事件被触发。
是不是清楚些了?
更多信息可以参考:
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.dodragdrop.aspx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律