[DllImport("user32.dll")]
static extern bool ValidateRect(IntPtr hWnd, ref RECT lpRect);
// If you don't want to pass a rect, you can use this overload passing IntPtr.Zero.
[DllImport("user32.dll")]
static extern bool ValidateRect(IntPtr hWnd, IntPtr lpRect);
Public Overloads Declare Function ValidateRect Lib "User32" (ByVal hWnd As IntPtr, ByRef lpRect As RECT) As Boolean
Public Overloads Declare Function ValidateRect Lib "User32" (ByVal hWnd As IntPtr, ByRef lpRect As IntPtr) As Boolean
Public Overloads Shared Function ValidateRect(ByVal hWnd As IntPtr) As Boolean
Return ValidateRect(hWnd, IntPtr.Zero)
End Function
Public Overloads Shared Function ValidateRect(ByVal hWnd As IntPtr, ByVal lpRect As System.Drawing.Rectangle) As Boolean
Return ValidateRect(hWnd, RECT.FromRectangle(lpRect))
End Function
In the Win32 API, it is valid to specify a value of "NULL" to lpRect. Use IntPtr.Zero in C#. This will validate the entire rectangle.
You can specify the lpRect param as null if you define your function as you can see bellow:
[DllImport("user32.dll")]
static extern bool ValidateRect(IntPtr hWnd, IntPtr lpRect);
Please add some!
Do you know one? Please contribute it!