EnableWindow (user32)
Last changed: -193.47.77.5

.
Summary

C# Signature:

[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool EnableWindow(IntPtr hWnd, bool bEnable);

VB.NET Signature:

<DllImport("user32.dll")> _
Private Shared Function EnableWindow(ByVal hWnd As IntPtr, ByVal bEnable As Boolean) As Boolean
End Function

User-Defined Types:

None.

Notes:

See IsWindowEnabled to determine whether a window is enabled.

Tips & Tricks:

This function is useful if you want to mimic the functionality of a modal window without using form.ShowDialog() method. Disable the parent window by using this function.

Sample Code:

C# Code Snippet

    [DllImport("user32.dll")]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool EnableWindow(IntPtr hWnd, bool bEnable);
        void EnableInput(Control control, bool enabled)
        {
            IntPtr controlPtr = (IntPtr)control.Handle.ToInt32();
            EnableWindow(controlPtr, enabled);
        }

Alternative Managed API:

The ManagedWindowsApi project (http://mwinapi.sourceforge.net) provides a

class ManagedWinapi.SystemWindow that has a settable Enabled property.

Documentation