Imports Infragistics.Win
Imports Infragistics.Win.UltraWinTree
Private Sub ultraTree1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ultraTree1.Click
Dim mainElement As UIElement
Dim element As UIElement
Dim screenPoint As Point
Dim clientPoint As Point
Dim node As UltraTreeNode
' コントロールのメイン要素を取得します
mainElement = Me.ultraTree1.UIElement
' 現在のマウス位置をコントロールのクライアント座標
' のポイントに変換します
screenPoint = Control.MousePosition
clientPoint = Me.ultraTree1.PointToClient(screenPoint)
' そのポイントにある要素を取得します
element = mainElement.ElementFromPoint(clientPoint)
If element Is Nothing Then Return
Debug.WriteLine("Clicked on an " + element.GetType().ToString())
Debug.Indent()
' その要素が含まれるグループを取得します
node = element.GetContext(GetType(UltraTreeNode))
If Not node Is Nothing Then
Debug.WriteLine("in node: " + node.Key + " - " + node.Text)
End If
' 親要素 チェーンをたどり、各親要素について
' 1 行ずつ情報を出力します
While Not element.Parent Is Nothing
element = element.Parent
Debug.WriteLine("is a child of an " + element.GetType().ToString())
Debug.Indent()
End While
'インデント レベルをリセットします
Debug.IndentLevel = 0
End Sub