作者Pheolina (努力赚钱~~)
看板C_Sharp
标题[问题] 请问ShowDialog
时间Tue Oct 7 11:40:42 2008
各位好,第一次在本版发文,还请多指教。
我是刚使用C#的新手,我想请问一下,
若我今天有A、B两个FORM,我想要在A以ShowDialog的方式叫出B,
然後B上有个Button以及TextBox,我希望在B按下Button後去判断
TextBox上是否有值,再决定是否要将Form B关闭
我原先想法是,在Button的Click事件上去判断TextBox,然後再来设定
其Button.DialogResult为None(不关闭)或是其他值,
然而这方法却行不通....我发现每次这样设定的时候,Button.DialogResult
总要等到下次Button Click之後才会起效用,後来我查询了MSDN中关於DialogResult的解释
"The form's DialogResult property is then set to the DialogResult of the
button when the button is clicked."
如果我理解的没错,他是在按下去的当下,就已经设定好该Parent Form(也就是我的B)
的DialogResult,而我处理的Click事件已经在这之後才发生,所以才会看不到我想要的效果。
所以想请问,若是这样的情况下,我该如何实现这样的功能呢?谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.248.166.173
1F:→ Pheolina:自己推一下,找到方法了@@,应该是设定Form的DialogResul 10/07 12:03
2F:→ Pheolina:而不是Button的,不好意思。 10/07 12:03
3F:→ hpo14:this.DialogResult = XXXXXX 10/07 20:26