Пример #1
0
		/// <summary>
		/// 将窗口边框的Aero效果扩展到客户区域
		/// </summary>
		/// <param name="window">目标窗口</param>
		/// <param name="margin">外边距</param>
		/// <returns>成功与否</returns>
		public static bool ExtendGlassFrame(Window window, Thickness margin)
		{
			if (!AeroGlassCompositionEnabled)
				return false;

			IntPtr hwnd = new WindowInteropHelper(window).Handle;
			if (hwnd == IntPtr.Zero)
				throw new InvalidOperationException("在启用Aero效果前窗口必须已显示");

			MARGINS margins = new MARGINS((int)margin.Left, (int)margin.Top, (int)margin.Right, (int)margin.Bottom);
			NativeMethods.DwmExtendFrameIntoClientArea(hwnd, ref margins);

			return true;
		}
Пример #2
0
		internal static extern void DwmExtendFrameIntoClientArea(IntPtr hWnd, ref MARGINS pMargins);