Ejemplo n.º 1
0
        /// <summary>
        /// 为窗体设置Win10亚克力背景
        /// </summary>
        /// <param name="window"></param>
        public static void SetAcrylicblur(this System.Windows.Window window)
        {
            AccentPolicy accent = new AccentPolicy
            {
                AccentState = AccentState.ACCENT_ENABLE_BLURBEHIND
            };

            int accentStructSize = Marshal.SizeOf(accent);

            IntPtr accentPtr = Marshal.AllocHGlobal(accentStructSize);

            Marshal.StructureToPtr(accent, accentPtr, false);

            WindowCompositionAttributeData data = new WindowCompositionAttributeData
            {
                Attribute  = WindowCompositionAttribute.WCA_ACCENT_POLICY,
                SizeOfData = accentStructSize,
                Data       = accentPtr
            };

            SetWindowCompositionAttribute(window.GetHandle(), ref data);

            Marshal.FreeHGlobal(accentPtr);
        }
Ejemplo n.º 2
0
 public TaskBarManager(System.Windows.Window win)
     : this(win.GetHandle())
 {
 }