C# 弹窗的多种重载方法

该代码定义了一个名为DialogClass的静态类,用于在WPF应用中展示各种类型的消息对话框,包括信息提示、警告、错误以及内容显示,并提供了点击按钮后的事件处理功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;

namespace AirInScreen
{
    public static class DialogClass
    {
        #region 消息窗
        /// <summary>
        /// 消息窗
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        public static void Infomation_OK(string caption, string content)
        {
            MessageBox.Show(content, caption, MessageBoxButton.OK, MessageBoxImage.Information);
        }

        #endregion

        #region 警告窗
        /// <summary>
        /// 警告窗
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        public static void Warning_OK(string caption, string content)
        {
            MessageBox.Show(content, caption, MessageBoxButton.OK, MessageBoxImage.Warning);
        }
        /// <summary>
        /// 警告窗,点击按钮后执行事件
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        /// <param name="okAction">点击OK执行方法</param>
        /// <param name="cancleAction">点击Cancel执行方法</param>
        public static void Warning_OKCancel(string caption, string content, Action okAction, Action cancleAction)
        {
            MessageBoxResult result = MessageBox.Show(content, caption, MessageBoxButton.OKCancel, MessageBoxImage.Warning);
            switch (result)
            {
                case MessageBoxResult.OK:
                    okAction?.Invoke();
                    break;
                case MessageBoxResult.Cancel:
                    cancleAction?.Invoke();
                    break;
                default:
                    break;
            }
        }
        /// <summary>
        /// 警告窗,点击按钮后执行事件
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        /// <param name="yesAction">点击yes执行方法</param>
        /// <param name="noAction">点击no执行方法</param>
        public static void Warning_YesNo(string caption, string content, Action yesAction, Action noAction)
        {
            MessageBoxResult result = MessageBox.Show(content, caption, MessageBoxButton.YesNo, MessageBoxImage.Warning);
            switch (result)
            {
                case MessageBoxResult.Yes:
                    yesAction?.Invoke();
                    break;
                case MessageBoxResult.No:
                    noAction?.Invoke();
                    break;
                default:
                    break;
            }
        }
        #endregion

        #region 错误窗
        /// <summary>
        /// 错误窗
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        public static void Error_OK(string caption, string content)
        {
            MessageBox.Show(content, caption, MessageBoxButton.OK, MessageBoxImage.Error);
        }
        /// <summary>
        /// 错误窗,点击按钮后执行事件
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        /// <param name="okAction">点击OK执行方法</param>
        /// <param name="cancleAction">点击Cancel执行方法</param>
        public static void Error_OKCancel(string caption, string content, Action okAction, Action cancleAction)
        {
            MessageBoxResult result = MessageBox.Show(content, caption, MessageBoxButton.OKCancel, MessageBoxImage.Warning);
            switch (result)
            {
                case MessageBoxResult.OK:
                    okAction?.Invoke();
                    break;
                case MessageBoxResult.Cancel:
                    cancleAction?.Invoke();
                    break;
                default:
                    break;
            }
        }
        /// <summary>
        /// 错误窗,点击按钮后执行事件
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        /// <param name="yesAction">点击yes执行方法</param>
        /// <param name="noAction">点击no执行方法</param>
        public static void Error_YesNo(string caption, string content, Action yesAction, Action noAction)
        {
            MessageBoxResult result = MessageBox.Show(content, caption, MessageBoxButton.YesNo, MessageBoxImage.Warning);
            switch (result)
            {
                case MessageBoxResult.Yes:
                    yesAction?.Invoke();
                    break;
                case MessageBoxResult.No:
                    noAction?.Invoke();
                    break;
                default:
                    break;
            }
        }
        #endregion

        #region 内容窗
        /// <summary>
        /// 内容窗
        /// </summary>
        /// <param name="content">弹窗内容</param>
        public static void Content(string content)
       {
            MessageBox.Show(content);
        }
        /// <summary>
        /// 内容窗
        /// </summary>
        /// <param name="caption">弹窗标题</param>
        /// <param name="content">弹窗内容</param>
        public static void Content(string caption, string content)
        {
            MessageBox.Show(content, caption);
        }
        #endregion
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值