弹出提示后如何返回?
在写winform窗体信息得提交验证,当验证不通过得时候弹出提示,并返回(不继续执行下面得代码)
但这个通用方法里写了return但是没效果是咋回事?
public class Popup { #region 基础参数 #endregion #region 公有方法 /// <summary> /// 弹窗提示 /// </summary> /// <param name="errorInfo">错误信息</param> /// <param name="title">标题</param> /// <param name="popUpType">弹窗类型</param> /// <returns></returns> public static DialogResult Tips(string errorInfo, string title = "信息提示", PopUpType popUpType = PopUpType.Error) { DialogResult dialogResult = default; switch (popUpType) { case PopUpType.Error: dialogResult = MessageBox.Show(errorInfo, title, MessageBoxButtons.YesNo, MessageBoxIcon.Error); break; case PopUpType.Info: dialogResult = MessageBox.Show(errorInfo, title, MessageBoxButtons.YesNo, MessageBoxIcon.Information); break; case PopUpType.question: dialogResult = MessageBox.Show(errorInfo, title, MessageBoxButtons.YesNo, MessageBoxIcon.Question); break; default: break; } return dialogResult; } //弹窗类型 public enum PopUpType { //错误 Error, //信息 Info, //问题 question, } #endregion }//Class_end
对于 C# ,我提供唯一的办法就是使用if else
语句进行化简一点点,同样可以实现你期望的效果,如下所示:
if (!Pagevalidata.IsNum(p_remark))
{
Popup.Tips("治疗编号不能为空");
}
else if (!Pagevalidata.ISChinese(p_name))
{
Popup.Tips("请输入患者姓名");
}
else if (!Pagevalidata.IsNum(p_age))
{
Popup.Tips("请输入患者年龄");
}
C# 不像 C/C++ 可以使用宏展开,可以把格式很固定的一个代码片段封装成一个宏函数,不过对于这个代码来说,不太必要。
我就是觉得可以封装成一个简单得方法
你这贴个按钮 加个点击事件就行了吧
弹出得提示都没问题,主要是弹出提示后,我想让他return,不继续执行,但后面得代码还是继续往下,我现在只能这样写
if (!Pagevalidata.IsNum(p_remark))
{
Popup.Tips("治疗编号不能为空");
return;
}
if (!Pagevalidata.ISChinese(p_name))
{
Popup.Tips("请输入患者姓名");
return;
}
if (!Pagevalidata.IsNum(p_age))
{
Popup.Tips("请输入患者年龄");
return;
}
每个判断都要return一下
这就是按钮点击后得验证