示例#1
0
        /// <summary>
        /// Returns an image that expresses the given <paramref name="dialogType"/>.
        /// </summary>
        /// <param name="dialogType">Dialog type</param>
        /// <returns>Image</returns>
        private Image GetImageForDialogType(EMessageDialogType dialogType)
        {
            string pathFormat = "resources/images/{0}";
            string imageName;

            if (dialogType == EMessageDialogType.Info)
            {
                imageName = "Info-32.png";
            }
            else if (dialogType == EMessageDialogType.Error)
            {
                imageName = "Error-32.png";
            }
            else if (dialogType == EMessageDialogType.Warning)
            {
                imageName = "Warning-32.png";
            }
            else if (dialogType == EMessageDialogType.Question)
            {
                imageName = "Question-64.png";
            }
            else
            {
                imageName = "Info-64.png";
            }

            string resourcePath = string.Format(pathFormat, imageName);

            using (Stream resourceStream = ResourceLoader.OpenStream(resourcePath)) {
                return(new Bitmap(resourceStream));
            }
        }
示例#2
0
        /// <summary>
        /// Shows a message dialog of the given <paramref name="dialogType"/>
        /// with the given arguments.
        /// </summary>
        /// <param name="dialogType">Type of the dialog</param>
        /// <param name="title">Dialog title</param>
        /// <param name="header">Dialog header</param>
        /// <param name="text">Dialog text</param>
        /// <param name="resultSet">Set of possible dialog results</param>
        /// <returns>Selected dialog result</returns>
        public static EMessageDialogResult Show(EMessageDialogType dialogType, string title, string header, string text,
                                                EMessageDialogResult[] resultSet)
        {
            IMessageDialog msgDlg = UIFactory.NewShell <IMessageDialog>();

            msgDlg.DialogType      = dialogType;
            msgDlg.WindowTitle     = title;
            msgDlg.Header          = header;
            msgDlg.Text            = text;
            msgDlg.DialogResultSet = resultSet ?? new[] { EMessageDialogResult.Ok };

            return(msgDlg.Show());
        }
示例#3
0
        /// <inheritdoc />
        EMessageDialogResult IMessageDialog.Show()
        {
            // Add dialog buttons
            AddMessageDialogButtons(((IMessageDialog)this).DialogResultSet ?? new[] { EMessageDialogResult.Ok });

            // Add dialog image
            EMessageDialogType dialogType = ((IMessageDialog)this).DialogType;
            Image dialogImage             = GetImageForDialogType(dialogType);

            iPictureBox.Image = dialogImage;

            PerformLayout();

            // Show dialog
            MessageDialogResult = EMessageDialogResult.None;
            ((IDialogWindow)this).Show();

            // Return result
            return(MessageDialogResult);
        }