public static MessageBoxResult Show( Window owner, string text, string caption, string log, MessageBoxButton button, MessageWindowImage icon, MessageBoxResult defaultResult) { MessageWindow box = new MessageWindow(); box.Owner = (owner == null ? Application.Current.MainWindow : owner); // allow blank caption, String.Empty if (caption != null) { box.titleBlock.Text = caption; } // text is required box.messageBox.Text = text; if (log != null) { box.logBox.Text = log; box.logBox.Visibility = Visibility.Visible; } box.SetButtons(button); box.SetIcon(icon); box.SetDefaultResult(defaultResult); box.ShowDialog(); return box.Result; }