namespace Yw.WinFrmUI
{
///
/// 提示窗体
///
public partial class VmoExceptionTipForm : DevExpress.XtraEditors.XtraForm
{
///
///
///
public VmoExceptionTipForm()
{
InitializeComponent();
this.labText.ImageOptions.Images = HttpStatusImageHelper.ImgC;
}
///
/// 设置
///
public void Set(Yw.Vmo.VException ex, int interval = 3000)
{
var imageIndex = 0;
switch (ex.ErrorStatus)
{
case (int)Yw.Dto.eResultCode.Success: imageIndex = 0; break;
case (int)Yw.Dto.eResultCode.Confirm: imageIndex = 1; break;
case (int)Yw.Dto.eResultCode.Prompt: imageIndex = 2; break;
case (int)Yw.Dto.eResultCode.Alert: imageIndex = 3; break;
case (int)Yw.Dto.eResultCode.Error: imageIndex = 4; break;
case (int)Yw.Dto.eResultCode.TimeOut: imageIndex = 5; break;
default: break;
}
this.timer1.Enabled = false;
this.labText.ImageOptions.ImageIndex = imageIndex;
this.labText.Text = $"[{ex.ErrorCode}]{ex.ErrorMsg}";
this.timer1.Interval = interval;
this.timer1.Enabled = true;
AdaptSize();
}
//自适应尺寸
private void AdaptSize()
{
int width = 300;
int height = 80;
var bestSize = this.labText.CalcBestSize();
if (width < bestSize.Width + 20)
{
width = bestSize.Width + 20;
}
if (height < bestSize.Height + 20)
{
height = bestSize.Height + 20;
}
this.Size = new Size(width, height);
}
///
/// 绘制边框
///
///
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
this.DrawBorder(e, Color.Gray, 1);
}
//事件
private void timer_Tick(object sender, EventArgs e)
{
this.timer1.Enabled = false;
this.Close();
}
}
}