0
我想要一個方法來檢測方法調用者和屬性。如何檢測方法的來電者及其屬性
例如,如果我在名爲'btn'的按鈕上調用該方法,它應該在消息框中爲我打印「btn」。
在網上搜索,但剛剛發現如何檢測方法是否被調用過!
在此先感謝您的幫助!
我想要一個方法來檢測方法調用者和屬性。如何檢測方法的來電者及其屬性
例如,如果我在名爲'btn'的按鈕上調用該方法,它應該在消息框中爲我打印「btn」。
在網上搜索,但剛剛發現如何檢測方法是否被調用過!
在此先感謝您的幫助!
您可以使用sender
對象參數。事情是這樣的:
private void button1_Click(object sender, EventArgs e)
{
method1(sender);
}
public void method1(object sender)
{
var button = sender as Button;
if (button != null)
{
var caller = button.Name;
MessageBox.Show(caller);//It shows button1
}
}
或者,如果你的編譯器版本足夠新,'if(sender is Button button)' –
如果您正在尋找不僅涵蓋事件的通用做法,但還有其他方法使用[來電信息](https://msdn.microsoft.com/en-us/library/ hh534540(v = vs.110).aspx)功能。 –