private void SetButtonVisibility(MessageBoxButtonOptions buttonOption)
        {
            switch (buttonOption)
            {
            case MessageBoxButtonOptions.Yes | MessageBoxButtonOptions.No:
                OkVisibility = CancelVisibility = RetryVisibility = Visibility.Collapsed;
                break;

            case MessageBoxButtonOptions.Yes | MessageBoxButtonOptions.No | MessageBoxButtonOptions.Cancel:
                OkVisibility = RetryVisibility = Visibility.Collapsed;
                break;

            case MessageBoxButtonOptions.Ok:
                YesNoVisibility = RetryVisibility = CancelVisibility = Visibility.Collapsed;
                break;

            case MessageBoxButtonOptions.Ok | MessageBoxButtonOptions.Cancel:
                YesNoVisibility = RetryVisibility = Visibility.Collapsed;
                break;

            case MessageBoxButtonOptions.Retry | MessageBoxButtonOptions.Cancel:
                YesNoVisibility = OkVisibility = Visibility.Collapsed;
                break;

            default:
                OkVisibility = CancelVisibility = RetryVisibility = YesNoVisibility = Visibility.Collapsed;
                break;
            }
        }
        public static MessageBoxResult Show(
            Action <Window> setOwner,
            string messageBoxText,
            string caption,
            MessageBoxButtonOptions button,
            MessageBoxImage icon,
            MessageBoxResult defaultResult,
            MessageBoxOptions options)
        {
            if ((options & MessageBoxOptions.DefaultDesktopOnly) == MessageBoxOptions.DefaultDesktopOnly)
            {
                throw new NotImplementedException();
            }

            if ((options & MessageBoxOptions.ServiceNotification) == MessageBoxOptions.ServiceNotification)
            {
                throw new NotImplementedException();
            }

            _messageBoxWindow = new WpfMessageBoxWindow();

            setOwner(_messageBoxWindow);

            PlayMessageBeep(icon);

            _messageBoxWindow._viewModel  = new MessageBoxViewModel(_messageBoxWindow, caption, messageBoxText, button, icon, defaultResult, options);
            _messageBoxWindow.DataContext = _messageBoxWindow._viewModel;
            _messageBoxWindow.ShowDialog();
            return(_messageBoxWindow._viewModel.Result);
        }
 private static MessageBoxResult ShowCore(
     Window owner,
     string messageBoxText,
     string caption = EmptyString,
     MessageBoxButtonOptions button = MessageBoxButtonOptions.Ok,
     MessageBoxImage icon           = MessageBoxImage.None,
     MessageBoxResult defaultResult = MessageBoxResult.None,
     MessageBoxOptions options      = MessageBoxOptions.None)
 {
     return(WpfMessageBoxWindow.Show(messageBoxWindow => ShowInternal(messageBoxWindow, owner), messageBoxText, caption, button, icon, defaultResult, options));
 }
        public MessageBoxViewModel(
            WpfMessageBoxWindow view,
            string title,
            string message,
            MessageBoxButtonOptions buttonOption,
            MessageBoxImage image,
            MessageBoxResult defaultResult,
            MessageBoxOptions options)
        {
            Title        = title;
            Message      = message;
            ButtonOption = buttonOption;
            Options      = options;

            SetDirections(options);
            SetButtonVisibility(buttonOption);
            SetImageSource(image);
            SetButtonDefault(defaultResult);
            _view = view;
        }
 public static MessageBoxResult Show(Window owner, string messageBoxText, string caption, MessageBoxButtonOptions button, MessageBoxImage icon, MessageBoxResult defaultResult, MessageBoxOptions options)
 {
     return(ShowCore(owner, messageBoxText, caption, button, icon, defaultResult, options));
 }
 public static MessageBoxResult Show(string messageBoxText, string caption, MessageBoxButtonOptions button, MessageBoxImage icon, MessageBoxResult defaultResult)
 {
     return(ShowCore(null, messageBoxText, caption, button, icon, defaultResult));
 }
 public static MessageBoxResult Show(Window owner, string messageBoxText, string caption, MessageBoxButtonOptions button)
 {
     return(ShowCore(owner, messageBoxText, caption, button));
 }
 public static MessageBoxResult Show(string messageBoxText, string caption, MessageBoxButtonOptions button)
 {
     return(ShowCore(null, messageBoxText, caption, button));
 }
Exemple #9
0
 /// <summary>
 /// Constructs a new message box button.
 /// </summary>
 /// <param name="flags">The flags.</param>
 /// <param name="buttonId">The ID of the button.</param>
 /// <param name="text">The text of the button.</param>
 public MessageBoxButton(MessageBoxButtonOptions flags, int buttonId, string text)
 {
     Flags    = flags;
     ButtonId = buttonId;
     Text     = text;
 }