コード例 #1
0
        public MessageBoxXWindow(string message, string caption, MessageBoxButton button, MessageBoxIcon icon, DefaultButton defaultButton, Window owner, MessageBoxXSetting setting)
        {
            _setting = setting;

            WindowXModalDialog.SetButtons(this, button);
            WindowXModalDialog.SetDefaultButton(this, defaultButton);
            WindowXModalDialog.SetOKButtonContent(this, setting.OKButtonContent);
            WindowXModalDialog.SetCancelButtonContent(this, setting.CancelButtonContent);
            WindowXModalDialog.SetYesButtonContent(this, setting.YesButtonContent);
            WindowXModalDialog.SetNoButtonContent(this, setting.NoButtonContent);
            WindowXModalDialog.SetButtonStyle(this, setting.ButtonStyle);
            WindowXModalDialog.SetInverseButtonsSequence(this, setting.InverseButtonsSequence);

            Owner = owner;
            Title = caption ?? "";
            WindowStartupLocation = owner == null ? WindowStartupLocation.CenterScreen : WindowStartupLocation.CenterOwner;

            Style   = setting.WindowXStyle;
            Content = new MessageBoxContent()
            {
                Message        = message,
                Caption        = caption,
                MessageBoxIcon = icon,
                ButtonStyle    = setting.ButtonStyle,
            };
            ContentTemplate = setting.ContentTemplate;
        }
コード例 #2
0
        protected override void OnClosing(CancelEventArgs e)
        {
            //Press Continue Button
            if (DialogResult == true)
            {
                if (_isProcessing)
                {
                    e.Cancel = true;
                    return;
                }
                if (!ValidateForm())
                {
                    e.Cancel = true;
                    return;
                }
                _isProcessing = true;
                var okButton = WindowXModalDialog.GetOKButton(this);
                ButtonHelper.SetIsPending(okButton, true);
                e.Cancel = true;
            }

            base.OnClosing(e);
        }