private void UpdateBorderStyle() { if (!IsManagerEnabled) { NativeWindowMethods.UpdateBorderStyle(base.Handle, BorderStyle.Fixed3D); } else { NativeWindowMethods.UpdateBorderStyle(base.Handle, BorderStyle.None); } }
/// <summary> A CodePane extension method that forces focus onto the CodePane. This patches a bug in VBE.Interop.</summary> public static void ForceFocus(this CodePane codePane) { codePane.Show(); var mainWindowHandle = codePane.VBE.MainWindow.Handle(); var childWindowFinder = new NativeWindowMethods.ChildWindowFinder(codePane.Window.Caption); NativeWindowMethods.EnumChildWindows(mainWindowHandle, childWindowFinder.EnumWindowsProcToChildWindowByCaption); var handle = childWindowFinder.ResultHandle; if (handle != IntPtr.Zero) { NativeWindowMethods.ActivateWindow(handle, mainWindowHandle); } }
void IMdiClientWindow.BorderColorChanged() { if (IsManagerEnabled) { SecurityPermission securityPermission = new SecurityPermission(SecurityPermissionFlag.UnmanagedCode); try { securityPermission.Assert(); NativeWindowMethods.RedrawWindowApi(base.Handle, IntPtr.Zero, IntPtr.Zero, 1089u); } catch (SecurityException) { } } }