Imports Infragistics.Win
Imports Infragistics.Win.UltraWinTree
Private Sub ultraTree1_BeforeCut(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinTree.BeforeCutEventArgs) Handles ultraTree1.BeforeCut
Dim sb As New System.Text.StringBuilder()
Dim node As UltraTreeNode
Dim dr As DialogResult
' Setting the Tag of the Nodes collection passed into the BeforeCut
' and BeforeCopy events to some serializable value can be used to
' identify the tree that copied the nodes to the clipboard. This Tag
' value will be de-serialized and set on the Nodes collection that is
' passed into the BeforePaste event. This can be used for preventing
' paste operations between trees.
' Set the Tag property on the Nodes collection to the tree's hash code.
' Note: don't set the tag to the tree itself since that isn't serializable
e.Nodes.Tag = Me.ultraTree1.GetHashCode()
sb.Append("The following nodes are about to be cut to the clipboard: ")
' Loop over the nodes that will be cut to the clipboard.
' Note: The Nodes collection exposed by the event args
' is read-only.
For Each node In e.Nodes
sb.Append(node.Text)
sb.Append(", ")
Next
sb.Append(" Press ''OK'' or ''Cancel''.")
dr = MessageBox.Show(Me, sb.ToString(), "Cutting nodes to the clipboard", MessageBoxButtons.OKCancel)
If dr = DialogResult.Cancel Then
e.Cancel = True
End If
End Sub