这个属性是干吗用的?

china3c2 2007-03-06 04:54:27
CancelEventArgs.Cancel 属性
这个属性,MSDN上说是取消事件用的,我不明白啊,事件咋还能取消呢?取消不取消有什么用?
...全文
189 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
灰太狼 2007-03-08
  • 打赏
  • 举报
回复
講得很清楚了,學習了。
hmilj245216 2007-03-08
  • 打赏
  • 举报
回复
就是你触发的事件被屏蔽了!!
hzsasheng 2007-03-06
  • 打赏
  • 举报
回复
好多星星,,来学习一下~~
liujia_0421 2007-03-06
  • 打赏
  • 举报
回复
举个很简单的例子(例子也是MSDN上的..)

// Call this method from the constructor of your form
private void OtherInitialize() {
this.Closing += new CancelEventHandler(this.Form1_Closing);
// Exchange commented line and note the difference.
this.isDataSaved = true;
//this.isDataSaved = false;
}

private void Form1_Closing(Object sender, CancelEventArgs e) {
if (!isDataSaved) {
e.Cancel = true;
MessageBox.Show("You must save first.");
}
else {
e.Cancel = false;
MessageBox.Show("Goodbye.");
}
}
如果isDataSaved为假,会执行e.Cancel=false,那么窗体会关闭..

而反之,会执行e.Cancel=true,此时窗体不会关闭..
北京的雾霾天 2007-03-06
  • 打赏
  • 举报
回复
在事件发生以后通过设置CancelEventArgs这个参数的Cancel属性以决定在事件执行后要调用处理的事情.

比如在Form的Closing事件中,参数CancelEventArgs的Cancel如果为True的话,将使Form不会关闭,如果为False则Form才会正常的关闭.
Snowdust 2007-03-06
  • 打赏
  • 举报
回复
如果在事件中执行CancelEventArgs.Cancel = true则相当于按了白按,不执行任何操作,这在某些场合是很有用的。比如某文本框要求只能输入数字,那么在文本框中判断按键,如果按下的不是数字键,则将CancelEventArgs.Cancel = true,这样按别的键就不起作用了。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧