我有三个按钮,分别在onClick
事件上调用btn_Clicked
。在后面的代码中,我想获取导致回发的按钮的ID。我知道我可以分配每个按钮来调用不同的方法,但我想了解一点ASP.Net。也告诉我哪种方法更有效率?在不同按钮点击或调用相同方法时调用不同的方法(如果每个按钮的功能相同)。如何检测后面代码中点击哪个按钮?
7
A
回答
20
将发件人对象转换为按钮,然后您可以获取所有属性。
Button clickedButton = (Button)sender;
还告诉我哪种方法更有效?通过不同的按钮点击或调用相同方法调用不同的方法 (如果每个按钮的功能相同)。
如果功能相同,那么最好只有一个事件,因为您不必复制代码。请记住DRY principle。
请看下面的例子:
protected void Button1_Click(object sender, EventArgs e)
{
Button clickedButton = sender as Button;
if (clickedButton == null) // just to be on the safe side
return;
if (clickedButton.ID == "Button1")
{
}
else if(clickedButton.ID == "Button2")
{
}
}
3
检查您的回调方法的sender
参数是否为同一基准按钮你有兴趣
Button button1;
Button button2;
void OnClick(object sender, RoutedEventArgs args)
{
Button button = sender as Button;
if (button == button1)
{
...
}
if (button == button2)
{
...
}
}
相关问题
- 1. 如何检测点击了哪个删除按钮?
- 2. 无法点击任何按钮后代码后写代码
- 3. 检测从ViewModel中点击了哪个按钮WPF
- 4. 按钮点击检测
- 5. java检测点击按钮
- 6. ASP.NET检查点击了哪个按钮
- 7. 检查哪个按钮被点击
- 8. 如何检测Durandal中的后退按钮点击
- 9. 显示html代码后点击按钮
- 10. 如何检测在javascript中单击了哪个按钮?
- 11. 添加@页面属性代码后面的按钮点击
- 12. 如何获得点击哪个按钮?
- 13. 点击一个按钮,检测的jQuery
- 14. 检测一个html按钮点击node.js?
- 15. 如何在我的代码中点击按钮点击?
- 16. javafx点击代码按钮
- 17. 点击了哪个按钮?
- 18. 检测哪个按钮已被点击并用ajx提交
- 19. 检测后退按钮点击和忽略额外的点击
- 20. 按钮点击后如何更改一些代码后的按钮文本
- 21. 如何选择在按钮后点击浏览器后去哪个页面
- 22. 检查点击页面上的哪个按钮离开提示?
- 23. 检测ctrl +点击pygtk中的按钮
- 24. 如何检查按钮正确点击后的页面内容?
- 25. VC++,检测按下按钮前点击
- 26. 按钮点击后没有刷新页面运行PHP代码
- 27. 做一个按钮点击代码behide
- 28. 如何在代码中模拟网页按钮点击后获取源代码
- 29. 无法确定哪个代码按钮点击执行
- 30. 如何检测按钮点击 - 提供的逻辑错误代码
使用发送对象事件处理程序。 – ryadavilli
学习mvc而不是 – Jeroen