Esempio n. 1
0
        public static MessageBoxResult Show(Window owner, string messageBoxText, string caption, MessageBoxButton button)
        {
            MessageBoxResult defaultResult = MessageBoxResult.None;

            switch (button)
            {
            case MessageBoxButton.OK:
                defaultResult = MessageBoxResult.OK;
                break;

            case MessageBoxButton.OKCancel:
                defaultResult = MessageBoxResult.Cancel;
                break;

            case MessageBoxButton.YesNoCancel:
                defaultResult = MessageBoxResult.Cancel;
                break;

            case MessageBoxButton.YesNo:
                defaultResult = MessageBoxResult.No;
                break;

            default:
                break;
            }
            return(MessageBoxModule.Show(owner, messageBoxText, caption, button, defaultResult));
        }
Esempio n. 2
0
        private static Button CreateButton(MessageBoxModule messageBox, string content, FlatButtonSkinEnum buttonType
                                           , MessageBoxResult dialogResult)
        {
            FlatButton button = new FlatButton();

            button.Content = content;
            button.Type    = buttonType;
            //button.Width = 70;
            button.Height = 30;
            button.HorizontalAlignment = HorizontalAlignment.Stretch;
            //button.CornerRadius = cornerRadius;
            //button.BorderThickness = thickness;
            //button.BorderBrush = new SolidColorBrush(Color.FromRgb(0, 122, 204));
            button.Margin = new Thickness(10, 0, 10, 10);
            //注册按钮的点击事件,返回相应的结果用于ShowDialog的返回值
            button.Click += (o, e) =>
            {
                bool?flag = null;
                switch (dialogResult)
                {
                case MessageBoxResult.None:
                    flag = null;
                    break;

                case MessageBoxResult.OK:
                    flag = true;
                    break;

                case MessageBoxResult.Cancel:
                    flag = false;
                    break;

                case MessageBoxResult.Yes:
                    flag = true;
                    break;

                case MessageBoxResult.No:
                    flag = false;
                    break;

                default:
                    break;
                }
                messageBox.DialogResult = flag;
            };

            return(button);
        }
Esempio n. 3
0
        private static Button CreateButton(MessageBoxModule messageBox, string content, FlatButtonSkinEnum buttonType, MessageBoxResult dialogResult)
        {
            FlatButton button = new FlatButton();

            button.Content      = content;
            button.Type         = buttonType;
            button.Width        = 70;
            button.Height       = 28;
            button.CornerRadius = new CornerRadius(3);
            button.Margin       = new Thickness(5, 0, 5, 0);
            //注册按钮的点击事件,返回相应的结果用于ShowDialog的返回值
            button.Click += (o, e) =>
            {
                bool?flag = null;
                switch (dialogResult)
                {
                case MessageBoxResult.None:
                    flag = null;
                    break;

                case MessageBoxResult.OK:
                    flag = true;
                    break;

                case MessageBoxResult.Cancel:
                    flag = false;
                    break;

                case MessageBoxResult.Yes:
                    flag = true;
                    break;

                case MessageBoxResult.No:
                    flag = false;
                    break;

                default:
                    break;
                }
                messageBox.DialogResult = flag;
            };

            return(button);
        }
Esempio n. 4
0
 public static MessageBoxResult Show(Window owner, string messageBoxText, string caption, MessageBoxButton button, EnumPromptType type)
 {
     return(MessageBoxModule.Show(owner, messageBoxText, caption, button, MessageBoxResult.OK, type));
 }
Esempio n. 5
0
 public static MessageBoxResult Show(Window owner, string messageBoxText, string caption, MessageBoxButton button)
 {
     return(MessageBoxModule.Show(owner, messageBoxText, caption, button));
 }
Esempio n. 6
0
 public static MessageBoxResult Show(Window owner, string messageBoxText)
 {
     return(MessageBoxModule.Show(owner, messageBoxText));
 }
Esempio n. 7
0
 public static MessageBoxResult Show(string messageBoxText, string caption, EnumPromptType type)
 {
     return(MessageBoxModule.Show(messageBoxText, caption, type));
 }
Esempio n. 8
0
 public static MessageBoxResult Show(string messageBoxText, string caption)
 {
     return(MessageBoxModule.Show(messageBoxText, caption));
 }
Esempio n. 9
0
 public static MessageBoxResult Show(string messageBoxText)
 {
     return(MessageBoxModule.Show(messageBoxText));
 }
Esempio n. 10
0
 public static MessageBoxResult Show(string messageBoxText, string caption, EnumPromptType type)
 {
     return(MessageBoxModule.Show(null, messageBoxText, caption, MessageBoxButton.OK, MessageBoxResult.OK, type));
 }
Esempio n. 11
0
        public static MessageBoxResult Show(Window owner, string messageBoxText, string caption
                                            , MessageBoxButton button, MessageBoxResult defaultResult, EnumPromptType type)
        {
            MessageBoxModule messageBox = new MessageBoxModule();

            if (owner != null)
            {
                //蒙板
                Grid layer = new Grid()
                {
                    Background = new SolidColorBrush(Color.FromArgb(128, 0, 0, 0))
                };
                //父级窗体原来的内容
                UIElement original = owner.Content as UIElement;
                owner.Content = null;
                //容器Grid
                Grid container = new Grid();
                container.Children.Add(original); //放入原来的内容
                container.Children.Add(layer);    //在上面放一层蒙板
                                                  //将装有原来内容和蒙板的容器赋给父级窗体
                owner.Content = container;
                messageBox.WindowStartupLocation = WindowStartupLocation.CenterOwner;
            }
            else
            {
                messageBox.ShowInTaskbar = true;
            }

            messageBox.Owner       = owner;
            messageBox.Title       = caption;
            messageBox.MessageText = messageBoxText;
            messageBox.Type        = type;

            switch (button)
            {
            case MessageBoxButton.OK:
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "确定", FlatButtonSkinEnum.primary, MessageBoxResult.OK));
                break;

            case MessageBoxButton.OKCancel:
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "取消", FlatButtonSkinEnum.ghost, MessageBoxResult.Cancel));
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "确定", FlatButtonSkinEnum.primary, MessageBoxResult.OK));
                break;

            case MessageBoxButton.YesNoCancel:
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "取消", FlatButtonSkinEnum.Default, MessageBoxResult.Cancel));
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "否", FlatButtonSkinEnum.ghost, MessageBoxResult.No));
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "是", FlatButtonSkinEnum.primary, MessageBoxResult.Yes));
                break;

            case MessageBoxButton.YesNo:
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "否", FlatButtonSkinEnum.ghost, MessageBoxResult.No));
                messageBox.ButtonCollection.Add(CreateButton(messageBox, "是", FlatButtonSkinEnum.primary, MessageBoxResult.Yes));
                break;

            default:
                break;
            }

            //该行是关键代码,窗体显示后进入阻塞状态,直到窗体有返回值:即点击了某个按钮或者关闭了窗体
            bool?result = messageBox.ShowDialog();

            switch (button)
            {
            //break;
            case MessageBoxButton.OKCancel:
            {
                return(result == true ? MessageBoxResult.OK
                            : result == false ? MessageBoxResult.Cancel :
                       MessageBoxResult.None);
            }

            //break;
            case MessageBoxButton.YesNo:
            {
                return(result == true ? MessageBoxResult.Yes : MessageBoxResult.No);
            }

            //break;
            case MessageBoxButton.YesNoCancel:
            {
                return(result == true ? MessageBoxResult.Yes
                            : result == false ? MessageBoxResult.No :
                       MessageBoxResult.Cancel);
            }

            case MessageBoxButton.OK:
            default:
            {
                return(result == true ? MessageBoxResult.OK : MessageBoxResult.None);
            }
            }
        }
Esempio n. 12
0
 public static MessageBoxResult Show(Window owner, string messageBoxText, string caption
                                     , MessageBoxButton button, MessageBoxResult defaultResult)
 {
     return(MessageBoxModule.Show(owner, messageBoxText, caption, button, defaultResult, EnumPromptType.Info));
 }
Esempio n. 13
0
 public static MessageBoxResult Show(string messageBoxText, string caption, MessageBoxButton button)
 {
     return(MessageBoxModule.Show(null, messageBoxText, caption, button));
 }