How do I perform drag drop operation between a GroupView and a text editor control ?
You could perform text drag drop operation between a text editor control like RichTextBox and GroupView by handling the GroupView's DragEnter and DragLeave events as shown below :
C#
string draggedtext = "";
private void groupView1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e)
{
this.draggedtext = e.Data.GetData(typeof(string)) as string;
}
private void groupView1_DragLeave(object sender, System.EventArgs e)
{
Point pt = this.groupView1.PointToClient(Control.MousePosition);
if (this.groupView1.ClientRectangle.Contains(pt))
{
if (this.draggedtext != "")
{
GroupViewItem gvi = new GroupViewItem();
gvi.Text = this.draggedtext;
this.groupView1.GroupViewItems.Add(gvi);
}
}
this.draggedtext = "";
}
VB
Dim draggedtext As String = ""
Private Sub groupView1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs)
Me.draggedtext = e.Data.GetData(Type.GetType(String)) as String
End Sub
Private Sub groupView1_DragLeave(ByVal sender As Object, ByVal e As System.EventArgs)
Dim pt As Point = Me.groupView1.PointToClient(Control.MousePosition)
If Me.groupView1.ClientRectangle.Contains(pt) Then
If Me.draggedtext.Equals("") Then
'do nothing
Else
Dim gvi As New GroupViewItem()
gvi.Text = Me.draggedtext
Me.groupView1.GroupViewItems.Add(gvi)
End If
Me.draggedtext = ""
End Sub