/// <summary> /// Shows the message box. /// </summary> /// <param name="child">The component calling the message box.</param> /// <param name="Caption">The caption (header).</param> /// <param name="Message">The message (content)</param> /// <param name="Buttons">The buttons of message box</param> /// <param name="Image">The icon indicating the level of the message (this parameter is not yet used in the current version of UI Framework).</param> /// <param name="DetailedError">The detailed error.</param> /// <returns>The <see cref="MessageBoxResult"/> value indication the choose of the user.</returns> public static MessageBoxResult ShowMessageBox(DependencyObject child, string Caption, string Message, MessageBoxButton Buttons = MessageBoxButton.OK, MessageBoxImage Image = MessageBoxImage.Information, string DetailedError = null) { Window w = GetParentWindow(child); if (w is BasicWindow bw) { return(bw.ShowMessageBox(Caption, Message, Buttons, Image, DetailedError)); } else if (w != null) { ClassicMessageBox cmb = new ClassicMessageBox(w, Message, Caption, Buttons, Image, DetailedError) { Owner = w }; var v = cmb.ShowDialog(); if (v.HasValue && v.Value) { var result = cmb.Result; return(result); } return(MessageBoxResult.OK); } else { ClassicMessageBox cmb = new ClassicMessageBox(null, Message, Caption, Buttons, Image, DetailedError); var v = cmb.ShowDialog(); if (v.HasValue && v.Value) { var result = cmb.Result; return(result); } return(MessageBoxResult.OK); } }
/// <summary> /// Show a MessageBox /// </summary> /// <param name="Caption">Title of the MessageBox</param> /// <param name="Message">Message</param> /// <param name="Buttons">Buttons to show in the MessageBox</param> /// <param name="Image">MessageBox Image (not used)</param> /// <param name="Details">Detailed error message, can include stack traces and large text to give more detailed information to users.</param> /// <returns>The <see cref="MessageBoxResult"/> value according to which button is clicked.</returns> public MessageBoxResult ShowMessageBox(string Caption, string Message, MessageBoxButton Buttons = MessageBoxButton.OK, MessageBoxImage Image = MessageBoxImage.None, string Details = null) { ClassicMessageBox mmb = new ClassicMessageBox(this, Message, Caption, Buttons, Image, Details); IsMaskVisible = true; var v = mmb.ShowDialog(); IsMaskVisible = false; var result = mmb.Result; mmb.Close(); if (v.HasValue && v.Value) { return(result); } else { return(MessageBoxResult.None); } }