예제 #1
0
        public override Task <MessageViewerEventArgs> DisplayMessage(string message, string title, MessageViewerButton button, MessageViewerIcon icon)
        {
            this.ActiveMessage = message;
            this.Title         = title;
            this.Icon          = new BitmapImage();
            switch (icon)
            {
            case MessageViewerIcon.Information:
                this.Icon = new BitmapImage(new Uri(@"/Images\StatusInformation_16x.png", UriKind.Relative));
                break;

            case MessageViewerIcon.Warning:
                this.Icon = new BitmapImage(new Uri(@"/Images\StatusWarning_16x.png", UriKind.Relative));
                break;

            case MessageViewerIcon.Error:
                this.Icon = new BitmapImage(new Uri(@"/Images\StatusCriticalError_16x.png", UriKind.Relative));
                break;

            default:
                this.Icon = new BitmapImage(new Uri(@"/Images\StatusInformation_16x.png", UriKind.Relative));
                break;
            }
            this.UseOkButton     = false;
            this.UseCancelButton = false;
            switch (button)
            {
            case MessageViewerButton.Ok:
                this.UseOkButton = true;
                break;

            case MessageViewerButton.OkCancel:
                this.UseOkButton     = true;
                this.UseCancelButton = true;
                break;

            default:
                this.UseOkButton = true;
                break;
            }
            this.IsMessageActive             = true;
            this.messageTaskCompletionSource = new TaskCompletionSource <MessageViewerEventArgs>();
            return(this.messageTaskCompletionSource.Task);
        }
 public abstract Task <MessageViewerEventArgs> DisplayMessage(string message, string title, MessageViewerButton button, MessageViewerIcon icon);