加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何取消winforms中的任何事件?

发布时间:2020-12-15 07:57:14 所属栏目:百科 来源:网络整理
导读:我想从该函数范围内取消事件. 例如.我按下了按钮点击事件,在错误验证时,我想取消此事件.同样我也想取消其他活动. 我怎么能在C#中做到这一点 解决方法 这取决于场景;在大多数情况下:不是取消事件,而是什么也不做,例如: private void SaveDataClicked(object
我想从该函数范围内取消事件.

例如.我按下了按钮点击事件,在错误验证时,我想取消此事件.同样我也想取消其他活动.

我怎么能在C#中做到这一点

解决方法

这取决于场景;在大多数情况下:不是取消事件,而是什么也不做,例如:
private void SaveDataClicked(object sender,EventArgs args) {
    if(!ValidateData()) return;
    // [snip: code that does stuff]
}

要么:

private void SaveDataClicked(object sender,EventArgs args) {
    if(ValidateData()) {
        // [snip: code that does stuff]
    }
}

有一些事件暴露了一个CancelEventArgs(或类似的),允许通过args取消一些外部行为 – 形式关闭是最明显的例子(设置e.Cancel = true;).

请注意,在这种情况下,我不会在按钮上有自动对话框结果;当(如果)处理程序成功完成时手动应用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读