コード例 #1
0
        internal static void SetNonClientRenderingPolicy(this Window window, NonClientRenderingPolicy policy)
        {
            Contract.Requires(window != null);
            //Contract.Requires(Enum.IsDefined(typeof(NonClientRenderingPolicy), policy));

            var       handle = window.GetWin32Handle();
            const int attr   = (int)WindowAttribute.NonClientRenderingPolicy;
            var       value  = (int)policy;
            const int size   = sizeof(int);

            var result = UnsafeNativeMethods.DwmSetWindowAttribute(handle, attr, ref value, size);

            Win32Error.EnsureSuccess(result);
        }
コード例 #2
0
        internal static NonClientRenderingPolicy GetNonClientRenderingPolicy(this Window window)
        {
            Contract.Requires(window != null);

            var       handle = window.GetWin32Handle();
            const int attr   = (int)WindowAttribute.NonClientRenderingPolicy;
            int       value;
            const int size = sizeof(int);

            var result = UnsafeNativeMethods.DwmGetWindowAttribute(handle, attr, out value, size);

            Win32Error.EnsureSuccess(result);

            return((NonClientRenderingPolicy)value);
        }