public static bool SetWindowCorners(Window window, CornerPreference corner) { if (Environment.OSVersion.Version < new Version(10, 0, 22000) /* Windows 11 */) { return(false); } var windowHandle = new WindowInteropHelper(window).Handle; uint value; switch (corner) { case CornerPreference.NotRound: value = (uint)DWMWCP.DWMWCP_DONOTROUND; break; case CornerPreference.Round: value = (uint)DWMWCP.DWMWCP_ROUND; break; default: return(false); } return(DwmSetWindowAttribute( windowHandle, DWMWA.DWMWA_WINDOW_CORNER_PREFERENCE, ref value, (uint)Marshal.SizeOf(value)) == S_OK); }
public static bool SetCornersForWin11(Window window, CornerPreference corner) { var windowHandle = new WindowInteropHelper(window).Handle; uint value; switch (corner) { case CornerPreference.NotRound: value = (uint)DWMWCP.DWMWCP_DONOTROUND; break; case CornerPreference.Round: value = (uint)DWMWCP.DWMWCP_ROUND; break; default: return(false); } return(DwmSetWindowAttribute( windowHandle, (uint)DWMWA.DWMWA_WINDOW_CORNER_PREFERENCE, ref value, (uint)Marshal.SizeOf(value)) == S_OK); }
/// <summary> /// Checks command-line arguments /// </summary> /// <param name="arguments">Arguments</param> protected virtual void CheckArguments(IReadOnlyList <string> arguments) { if (arguments is null) { return; } int i = 0; while (i < arguments.Count - 1) { switch (arguments[i]) { case ThemeOption when Enum.TryParse(arguments[i + 1], true, out ColorTheme buffer): _theme = buffer; RespondsThemeChanged = false; i++; break; case TextureOption when Enum.TryParse(arguments[i + 1], true, out BackgroundTexture buffer): _texture = buffer; i++; break; case CornerOption when Enum.TryParse(arguments[i + 1], true, out CornerPreference buffer): _corner = buffer; i++; break; } i++; } }