validaterect (user32)
Last changed: -192.25.240.225

.
Summary

C# Signature:

[DllImport("user32.dll")]
static extern bool ValidateRect(IntPtr hWnd, ref RECT lpRect);

Common overloads:

// 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);

VB Signature:

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

User-Defined Types:

RECT

Notes:

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.

Tips & Tricks:

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);

Sample Code:

Please add some!

Alternative Managed API:

Do you know one? Please contribute it!

Documentation