[转帖]C#如何实现DataGridView到DataGridView的拖拽
[转帖]C#如何实现DataGridView到DataGridView的拖拽
今天工作中遇到一个问题,需要将一个DataGridView中的某一行拖拽到另一个DataGridView中,在网上搜了一遍,大多是从DataGridView拖拽到TextBox等控件,没有拖拽到DataGridView中的。拖拽到TextBox很容易,但拖拽到DataGridView就有一个问题:如何决定拖拽到DataGridView中的哪一个Cell? 代码如下: gridSource的MouseDown事件: private void gridSource_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { DataGridView.HitTestInfo info = this.gridSource.HitTest(e.X, e.Y); if (info.RowIndex >= 0) { if (info.RowIndex >= 0 && info.ColumnIndex >= 0) { string text = (String)this.gridSource.Rows[info.RowIndex].Cells[info.ColumnIndex].Value; if (text != null) { this.gridSource.DoDragDrop(text, DragDropEffects.Copy); } } } } } gridTarget的DragDrop事件: private void gridTarget_DragDrop(object sender, DragEventArgs e) { //得到要拖拽到的位置 Point p = this.gridTarget.PointToClient(new Point(e.X, e.Y)); DataGridView.HitTestInfo hit = this.gridTarget.HitTest(p.X, p.Y); if (hit.Type == DataGridViewHitTestType.Cell) { DataGridViewCell clickedCell = this.gridTarget.Rows[hit.RowIndex].Cells[hit.ColumnIndex]; clickedCell.Value = (System.String)e.Data.GetData(typeof(System.String)); //如果只想允许拖拽到某一个特定列,比如Target Field Expression,则先要判断列是否为Target Field Expression,如下: //if (0 == string.Compare(clickedCell.OwningColumn.Name, "Target Field Expression")) //{ // clickedCell.Value = (System.String)e.Data.GetData(typeof(System.String)); //} } } gridTarget的DragEnter事件: private void gridTarget_DragEnter(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Copy; } 本文转自:http://www.cnblogs.com/michaelxu/archive/2009/09/27/1574905.html 本文来源:
参考文档:
C# 控件的属性是个类,如何给添加自定义属性 C# ASP.NET 实现文件断点续传 [转帖]C#如何调用非托管函数(一) [转帖]C#如何调用非托管函数(二)-传递结构和类 [转帖]C#如何调用非托管函数(三)-实现回调函数 无线监控系统之二-------C#实现 [原创]无线监控系统之二-------C#实现(续) [原创]C#植入友商网在线服务并实现同步用户注册接口(一) C#植入友商网在线服务并实现同步用户注册接口实现 C#中实现对象的深拷贝(Deep Copy) [原创]C#植入友商网在线服务并实现同步用户注册接口(三) C#实现SQL查询分析器(C# Visual SQL Query Designer) C#用ListView实现XP分组样式(图) C# 数据窗体实现增删改查(CRUD)源码下载(原) CS开发框架如何实现快速开发?
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |