namespace Yw.WinFrmUI
|
{
|
/// <summary>
|
/// 提示窗体
|
/// </summary>
|
public partial class VmoExceptionTipForm : DevExpress.XtraEditors.XtraForm
|
{
|
/// <summary>
|
///
|
/// </summary>
|
public VmoExceptionTipForm()
|
{
|
InitializeComponent();
|
this.labText.ImageOptions.Images = HttpStatusImageHelper.ImgC;
|
}
|
|
/// <summary>
|
/// 设置
|
/// </summary>
|
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);
|
}
|
|
/// <summary>
|
/// 绘制边框
|
/// </summary>
|
/// <param name="e"></param>
|
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();
|
}
|
|
|
|
}
|
}
|