首页 > 解决方案 > C# 检查按下了什么按钮

问题描述

我知道这个问题,但它并没有解决我的问题。

假设我们有两个按钮做同样的事情(加载 csv 文件并在两个变量中提供数据)但在两组不同的变量上。我可以编写两个专用于这两个函数的函数,但是它们会共享太多通用代码。

如何检测调用回调函数的按钮来决定要处理的变量集?

标签: c#wpfwpf-controls

解决方案


您可以Button通过转换sender参数来访问 。

您应该使用显式转换而不是(常见的)as运算符,因为它会正确地导致InvalidCastException发送者意外地不是按钮。

private void button_Click(object sender, EventArgs e)
{
    var button = (Button)sender;
    // Use button properties to differentiate and load to your variables accordingly
}

推荐阅读