关于子窗体关闭同时刷新父窗体的问题

亲,是这样的,我现在在实习,最近在练习做一个C#连接Oracle然后对数据库进行增删改查的小程序,有一个问题,我简单说一下,就是我的父窗体有个dgv来显示数据库数据,然后... 亲,是这样的,我现在在实习,最近在练习做一个C#连接Oracle然后对数据库进行增删改查的小程序,有一个问题,我简单说一下,就是我的父窗体有个dgv来显示数据库数据,然后有个增加数据Button,点一下,出现子窗体,然后子窗体上有姓名,号码输入框,还有一个确定输入键。我想实现按一下确定输入键输入键,然后子窗体自动关闭,父窗体的dgv内容自动刷新,我百度了个方法,很管用,是这样的。//你在主窗体调用子窗体事件里面写:
子窗体f = new 子窗体();
f.Owner = this;
f.ShowDialog();
if (f.DialogResult == DialogResult.OK)
{
//子窗体上面点击确定按钮想执行的内容,这里添加内容后可以重新绑定,如果datagridview是bingsource绑定的话,直接把数据源给bingsource即可
}

//在子窗体窗体加载事件里面写:
确定按钮.DialogResult = DialogResult.OK;
取消按钮.DialogResult = DialogResult.Cancel;

实现了我的要求,,可是我的输入处也是有要求的,比如如果输入框没填,它会弹出MsgBox提示错误,但现在是提示完错误也直接关闭子窗体了。。。。
我应该怎么办才能实现如果输入无误就关闭子窗体刷新父窗体,,,如果输入有误就还保持原样。。直到输入正确数据。。求大神指教,,我弄了一晚上了也没弄好。。。谢谢了~
展开
 我来答
以自定5938
2014-08-28 · 超过59用户采纳过TA的回答
知道答主
回答量:122
采纳率:0%
帮助的人:128万
展开全部
复制代码 代码如下: Code highlighting produced by Actipro CodeHighlighter (freeware) 使用open方式打开的窗体 //使用地址方式 window.opener.location.href='m_Shedule_Main.aspx'; //使用浏览器刷新功能 window.opener.location.reload(); 使用showModalDialog方法 window.returnValue = 'refresh';
请采纳答案,支持我一下。
追问
亲,把这些代码放到哪个事件下啊都 = =以前的不要了么?
shuibiyy
推荐于2016-11-21 · TA获得超过1724个赞
知道小有建树答主
回答量:446
采纳率:100%
帮助的人:142万
展开全部
在子窗体的button点击事件里加入:
(1)如果是单个判断
if(输入框(姓名).Text =="")
{
MessageShow.Box("输入框不能为空");
return
}
if(输入框(姓名).Text =="")
{
MessageShow.Box("输入框不能为空");
return;
}

…………
(2)
(使遍历的方法)
foreach(Control con in 子窗体.Controls)
{
if(con is TextBox)
{
if(con.Text =="")
{
MessageShow.Box("输入框不能为空");
return;
}

}

}
}
追问
哦哦,这个我之前就加了,可是不起作用啊。。还是不管怎么样,只要一弹报错框然后点一下报错框的OK,就立马子窗体关闭了。 = =很无奈,本例只是想实现当添加成功框弹出后点OK才关闭的;麻烦亲看看我的问题出在哪。谢谢了。
追答
出现异常
没对异常处理当然有问题
那是你的程序没处理好
上面那是的方法中没问题的。对异常处理你也可以try {}catch{} 来处理使出错也不会关闭。

但是实际处理 程序是方法不是报错都不做任何的处理。
最好是要找到异常的原因。并处理好这问题。当然好的异常也可以利用。
从你的问题:
“可是我的输入处也是有要求的,比如如果输入框没填,它会弹出MsgBox提示错误"
看。首先这样说比如如果输入框没填 用专业的角度来看是给出提示,而不是一个错误。程序员理解的错误一般是指导程序报错。
另外:按你追加的情况出看你写 的程序很大可能是存在异常的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式