using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using System.Text.RegularExpressions; namespace Stone.Common { public class MyErrorProvider { private static ErrorProvider errorProvider = new ErrorProvider(); static MyErrorProvider() { errorProvider.BlinkStyle = ErrorBlinkStyle.AlwaysBlink; } public static void SetError(Control control, string error) { errorProvider.SetError(control, error); control.Focus(); } public static void ClearError(Control control) { errorProvider.SetError(control, ""); } } public class MyValidator { /// <summary> /// 判断输入是否为空! /// </summary> /// <param name="control"></param> /// <param name="error"></param> /// <returns></returns> public static bool IsEmpty(Control control, string error) { if (control.Text.Trim() == string.Empty) { MyErrorProvider.SetError(control, error + " 不能为空!"); return false; } MyErrorProvider.ClearError(control); return true; } /// <summary> /// 判断输入是否是数值 /// </summary> /// <param name="control"></param> /// <param name="error"></param> /// <returns></returns> public static bool IsNumeric(Control control, string error) { bool result; Regex regex = new Regex("^[0-9]*[0-9][0-9]*$"); result = regex.IsMatch(control.Text.Trim()); if (!result) { MyErrorProvider.SetError(control, error + " 只能是数字!"); return result; } MyErrorProvider.ClearError(control); return result; } /// <summary> /// 判断输入是否为Money /// </summary> /// <param name="control"></param> /// <param name="error"></param> /// <returns></returns> public static bool IsMoney(Control control, string error) { bool result; result = false; try { double t = Convert.ToDouble(control.Text.Trim()); if (t < 0) { result = false; }else { result = true; } } catch { } if (!result) { MyErrorProvider.SetError(control, error + " 不是正确的金额!"); return result; } MyErrorProvider.ClearError(control); return result; } } }