当前位置:  开发笔记 > 编程语言 > 正文

如何区分button_click(null,null)和用户实际点击

如何解决《如何区分button_click(null,null)和用户实际点击》经验,为你挑选了1个好方法。

我正在"强制"从方法中单击按钮 button_Click(null,null)

button_Click方法中,我想区分实际点击和强制点击(button_Click(null,null)).

我以为我可以使用if语句来检查if (sender.Equals(null)),但这只是一个猜测而且它不起作用.我很抱歉,如果这似乎,请给我一个答案,但我没有找到类似的东西.



1> 小智..:

处理此问题的通常方法是甚至不尝试处理它.

除非事件发生,否则不要调用事件处理程序.创建一个可重用的方法,该方法接受一个参数来指示您是否有真正的按钮单击.然后button_Click使用一个值从一个带有另一个值的新方法中调用它.

private void button_Click(object sender, EventArgs e) {
  HandleButtonClick(isRealClick: true);
}

private void SimulateButtonClick() {
  HandleButtonClick(isRealClick: false);
}

private void HandleButtonClick(bool isRealClick) {
  // ...
}

现在,不要打电话button_Click(null, null),而是打电话SimulateButtonClick().

调用的缺点button_Click(null, null)是,对于阅读代码的其他人来说,不应该将您的调用更改为不明显button_Click(button, EventArgs.Empty).这样的改变会破坏你的代码.如果可能,您应该编写代码,以便易于理解和维护.

推荐阅读
mobiledu2402851373
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有