using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; namespace CommonFunc.Tools { public class CustomMessageBox { public static CustomMessageBoxResult Show(string messageBoxText, CustomMessageBoxButton messageBoxButton, CustomMessageBoxIcon messageBoxImage) { HMessageBox window = new HMessageBox(); try { //window.Owner = Application.Current.MainWindow; //window.Topmost = true; window.MessageBoxText = messageBoxText; window.OkButtonVisibility = Visibility.Hidden; window.CancelButtonVisibility = Visibility.Hidden; window.YesButtonVisibility = Visibility.Hidden; window.NoButtonVisibility = Visibility.Hidden; switch (messageBoxImage) { case CustomMessageBoxIcon.Question: window.ImagePath = @"Resources/alert.png"; break; case CustomMessageBoxIcon.Error: window.ImagePath = @"Resources/Error.png"; break; case CustomMessageBoxIcon.Warning: window.ImagePath = @"Resources/alert.png"; break; case CustomMessageBoxIcon.Success: window.ImagePath = @"Resources/Success.png"; break; } switch (messageBoxButton) { case CustomMessageBoxButton.OK: window.OkButtonVisibility = Visibility.Visible; break; case CustomMessageBoxButton.OKCancel: window.OkButtonVisibility = Visibility.Visible; window.CancelButtonVisibility = Visibility.Visible; break; case CustomMessageBoxButton.YesNo: window.YesButtonVisibility = Visibility.Visible; window.NoButtonVisibility = Visibility.Visible; break; case CustomMessageBoxButton.YesNoCancel: window.YesButtonVisibility = Visibility.Visible; window.NoButtonVisibility = Visibility.Visible; window.CancelButtonVisibility = Visibility.Visible; break; default: window.OkButtonVisibility = Visibility.Visible; break; } window.SetControl(); window.ShowDialog(); } catch (Exception ex) { LogHelper.instance.log.Error("调用弹出消息 异常:" + ex.Message); } return window.Result; } public static CustomMessageBoxResult Show(string messageBoxText) { HMessageBox window = new HMessageBox(); window.MessageBoxText = messageBoxText; window.OkButtonVisibility = Visibility.Hidden; window.CancelButtonVisibility = Visibility.Hidden; window.YesButtonVisibility = Visibility.Hidden; window.NoButtonVisibility = Visibility.Hidden; window.ImagePath = @"Resources/Success.png"; window.OkButtonVisibility = Visibility.Visible; window.CancelButtonVisibility = Visibility.Visible; window.SetControl(); window.ShowDialog(); return window.Result; } public static CustomMessageBoxResult Show(string messageBoxText, CustomMessageBoxIcon messageBoxImage) { HMessageBox window = new HMessageBox(); window.MessageBoxText = messageBoxText; window.OkButtonVisibility = Visibility.Hidden; window.CancelButtonVisibility = Visibility.Hidden; window.YesButtonVisibility = Visibility.Hidden; window.NoButtonVisibility = Visibility.Hidden; switch (messageBoxImage) { case CustomMessageBoxIcon.Question: window.ImagePath = @"Resources/alert.png"; break; case CustomMessageBoxIcon.Error: window.ImagePath = @"Resources/Error.png"; break; case CustomMessageBoxIcon.Warning: window.ImagePath = @"Resources/alert.png"; break; case CustomMessageBoxIcon.Success: window.ImagePath = @"Resources/Success.png"; break; } window.OkButtonVisibility = Visibility.Visible; window.CancelButtonVisibility = Visibility.Visible; window.SetControl(); window.ShowDialog(); return window.Result; } } #region Enum Class /// /// 显示按钮类型 /// public enum CustomMessageBoxButton { OK = 0, OKCancel = 1, YesNo = 2, YesNoCancel = 3 } /// /// 消息框的返回值 /// public enum CustomMessageBoxResult { //用户直接关闭了消息窗口 None = 0, //用户点击确定按钮 OK = 1, //用户点击取消按钮 Cancel = 2, //用户点击是按钮 Yes = 3, //用户点击否按钮 No = 4 } /// /// 图标类型 /// public enum CustomMessageBoxIcon { None = 0, Error = 1, Question = 2, Warning = 3, Success = 4 } #endregion }