1.调用静态XtraMessageBox的Show()方法显示消息框;
private void Form1_FormClosing_1(object sender, FormClosingEventArgs e)
{
//文本内容,消息框标题,消息框中显示的按钮,图标,默认按钮
if (XtraMessageBox.Show("是否关闭程序?", "提示", MessageBoxButtons.YesNo,MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button2) == DialogResult.No)
{
e.Cancel = true;
}
}
1.1消息框按钮
MessageBoxButtons.AbortRetryIgnore 中止、 重试和忽略按钮
MessageBoxButtons.OK 确定按钮
MessageBoxButtons.OKCancel 确定和取消按钮
MessageBoxButtons.RetryCancel 重试和取消按钮
MessageBoxButtons.YesNo 是和否按钮
MessageBoxButtons.YesNoCancel 是,否,取消按钮
1.2DialogResult返回值
DialogResult.None 话框仍继续运行
DialogResult.OK
DialogResult.Cancel
DialogResult.Abort
DialogResult.Retry
DialogResult.Ignore
DialogResult.Yes
DialogResult.No
1.3消息框图标
MessageBoxIcon.Asterisk 在圆圈中包含小写字母 i
MessageBoxIcon.Error 红色背景圆圈中白色 X
MessageBoxIcon.Exclamation 黄色背景三角形中感叹号
MessageBoxIcon.Hand 红色背景圆圈中白色 X
MessageBoxIcon.Information 圆圈中包含小写字母 i
MessageBoxIcon.None 未包含图标
MessageBoxIcon.Question 圆圈中包含问号
MessageBoxIcon.Stop 红色背景圆圈中白色 X
MessageBoxIcon.Warning 黄色背景三角形中感叹号
2.设置倒计时的消息框
XtraMessageBoxArgs args = new XtraMessageBoxArgs();
//设置自动关闭时间(以毫秒为单位)
args.AutoCloseOptions.Delay = 5000;
args.Caption = "提示";
args.Text = "5秒后自动关闭";
args.Buttons = new DialogResult[] { DialogResult.OK, DialogResult.Cancel };
// 设置默认按钮
args.DefaultButtonIndex = 1;
// 设置显示倒计时计时器
args.AutoCloseOptions.ShowTimerOnDefaultButton = true;
XtraMessageBox.Show(args).ToString();
3.自定义消息框
设置消息框
private void simpleButton3_Click(object sender, EventArgs e)
{
XtraMessageBoxArgs args = new XtraMessageBoxArgs();
args.Caption = "提示";
args.Text = "自定义消息框";
args.Buttons = new DialogResult[] { DialogResult.OK, DialogResult.Cancel, DialogResult.Retry };
args.Showing += Args_Showing;
XtraMessageBox.Show(args).ToString();
}
//从写Showing事件自定义消息框
private void Args_Showing(object sender, XtraMessageShowingArgs e)
{
foreach (var control in e.Form.Controls)
{
SimpleButton button = control as SimpleButton;
if (button != null)
{
button.ImageOptions.SvgImageSize = new Size(16, 16);
button.Height = 40;
e.Form.Appearance.FontStyleDelta = FontStyle.Strikeout;
e.Form.Appearance.BackColor = Color.Blue;
}
}
}