实现方法,在datagridview的mousedown事件中开始 托放。
然后在treeview 的 DragEnter 中接收托放。
最后在treeview的 DragDrop 中处理托放结果。
注:treeview的allowdrop属性要设置为 true。
:
1
从 DataGridView 控件 托放数据 到 TreeView控件 private void dataGridView1_MouseDown(object sender, MouseEventArgs e)
2
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 {
3
从 DataGridView 控件 托放数据 到 TreeView控件 if (e.Button == MouseButtons.Right)
4
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 5
从 DataGridView 控件 托放数据 到 TreeView控件 DataGridView.HitTestInfo info = dataGridView1.HitTest(e.X, e.Y);
6
从 DataGridView 控件 托放数据 到 TreeView控件 7
从 DataGridView 控件 托放数据 到 TreeView控件 if (info.RowIndex >= 0)
8
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 9
从 DataGridView 控件 托放数据 到 TreeView控件 DataGridViewRow dr = (DataGridViewRow)
10
从 DataGridView 控件 托放数据 到 TreeView控件 dataGridView1.Rows[info.RowIndex];
11
从 DataGridView 控件 托放数据 到 TreeView控件 if (dr != null)
12
从 DataGridView 控件 托放数据 到 TreeView控件 dataGridView1.DoDragDrop(dr, DragDropEffects.Copy);
13
从 DataGridView 控件 托放数据 到 TreeView控件 }
14
从 DataGridView 控件 托放数据 到 TreeView控件 }
15
从 DataGridView 控件 托放数据 到 TreeView控件 }
16
从 DataGridView 控件 托放数据 到 TreeView控件 17
从 DataGridView 控件 托放数据 到 TreeView控件 private void treeView1_DragEnter(object sender, DragEventArgs e)
18
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 19
从 DataGridView 控件 托放数据 到 TreeView控件 e.Effect = DragDropEffects.Copy;
20
从 DataGridView 控件 托放数据 到 TreeView控件 21
从 DataGridView 控件 托放数据 到 TreeView控件 22
从 DataGridView 控件 托放数据 到 TreeView控件 private void treeView1_DragDrop(object sender, DragEventArgs e)
23
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 24
从 DataGridView 控件 托放数据 到 TreeView控件 if (e.Data.GetDataPresent(typeof(DataGridViewRow)))
25
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 {
26
从 DataGridView 控件 托放数据 到 TreeView控件 Point p = treeView1.PointToClient(new Point(e.X, e.Y));
27
从 DataGridView 控件 托放数据 到 TreeView控件 TreeViewHitTestInfo index = treeView1.HitTest(p);
28
从 DataGridView 控件 托放数据 到 TreeView控件 29
从 DataGridView 控件 托放数据 到 TreeView控件 if (index.Node != null)
30
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件
从 DataGridView 控件 托放数据 到 TreeView控件 31
从 DataGridView 控件 托放数据 到 TreeView控件 32
从 DataGridView 控件 托放数据 到 TreeView控件 DataGridViewRow drv = (DataGridViewRow)e.Data.GetData(typeof(DataGridViewRow));
33
从 DataGridView 控件 托放数据 到 TreeView控件 index.Node.Text = "Drop: " + drv.Cells[0].ToString();
34
从 DataGridView 控件 托放数据 到 TreeView控件 35
从 DataGridView 控件 托放数据 到 TreeView控件 36
从 DataGridView 控件 托放数据 到 TreeView控件 37
从 DataGridView 控件 托放数据 到 TreeView控件