How to get tooltip handle in NET

From HashVB
Jump to: navigation, search
float
 This article is based on Visual Basic.NET. Find other Visual Basic.NET articles.

.NET ToolTip control doesn't expose Handle property. Then we should use InvokeMember to retrieve that property

The following function returns the handle:

Public Shared Function GetToolTipHandle(ByVal ctrlToolTip As ToolTip) As IntPtr

       Dim obj As Object
       Dim hwnd As IntPtr
       Try
           hwnd = IntPtr.Zero
           obj = GetType(ToolTip).InvokeMember("Handle", Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Instance Or Reflection.BindingFlags.GetProperty, Nothing, ctrlToolTip, Nothing)
           hwnd = CType(obj, IntPtr)
       Catch ex As Exception

       End Try
       Return hwnd

End Function

How to use the function in your program:

Dim hwnd as IntPtr = GetToolTipHandle(ToolTip1)

To convert the pointer to numeric(integer) use like this:

hwnd.toInt32()