internal static void ShowHelpButton(Window window, HelpButtonClicked callbackDelegate) { var hwnd = GetWindowHwnd(window); var value = GetWindowLong(hwnd, GWL_EXSTYLE); DisableSystemButtons(window, SystemButton.Minimize | SystemButton.Maximize); value |= WS_EX_CONTEXTHELP; SetWindowLong(hwnd, GWL_EXSTYLE, value); Internal.WindowMessageHelper.RegisterWindowsMessages(window, callbackDelegate); }
internal static void RegisterWindowsMessages(Window window, HelpButtonClicked callback) { ((HwndSource) PresentationSource.FromVisual(window)).AddHook(new HwndSourceHook(WindowMessage)); _window = window; _callback = callback; }
internal static void RegisterWindowsMessages(Window window, HelpButtonClicked callback) { ((HwndSource)PresentationSource.FromVisual(window)).AddHook(new HwndSourceHook(WindowMessage)); _window = window; _callback = callback; }
protected internal virtual void OnHelpButtonClicked(EventArgs e) { HelpButtonClicked?.Invoke(this, e); }
/// <summary> /// Hides the minimize and maximize buttons and displays a help button (?) instead of them. /// </summary> /// <param name="target"></param> /// <param name="callbackDelegate">The function to be called when the ?-button is clicked.</param> public static void ShowHelpButton(this Window target, HelpButtonClicked callbackDelegate) { Internal.SystemMenuManager.ShowHelpButton(target, callbackDelegate); }
private void HELP_BUTTON_Click(object sender, EventArgs e) { HelpButtonClicked?.Invoke( ); }