| 123456789101112131415161718192021222324252627282930313233343536373839 | using System;using System.Runtime.InteropServices;namespace InABox.WPF{    public sealed class SafeNativeMethods    {        [Flags]        public enum SetWindowPosFlags : uint        {            SWP_NOACTIVATE = 0x0010,            SWP_NOMOVE = 0x0002,            SWP_NOSIZE = 0x0001        }        public const int WS_EX_NOACTIVATE = 0x08000000;        public const int ULW_ALPHA = 0x00000002;        public const int AC_SRC_OVER = 0x00000000;        public const int AC_SRC_ALPHA = 0x00000001;        public static readonly IntPtr HWND_TOP = new(0);        [DllImport("user32.dll", ExactSpelling = true, SetLastError = true)]        public static extern bool UpdateLayeredWindow(IntPtr hwnd, IntPtr hdcDst, IntPtr pptDst, IntPtr psize, IntPtr hdcSrc, IntPtr pptSrc,            uint crKey,            [In] ref BLENDFUNCTION pblend, uint dwFlags);        [DllImport("user32.dll", ExactSpelling = true, SetLastError = true)]        [return: MarshalAs(UnmanagedType.Bool)]        public static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, SetWindowPosFlags uFlags);        public struct BLENDFUNCTION        {            public byte BlendOp;            public byte BlendFlags;            public byte SourceConstantAlpha;            public byte AlphaFormat;        }    }}
 |