2011-05-06 64 views
1

有沒有辦法讓我把對象發送者變成控制發送者?我最終想要的是對象發送者告訴我控制器數量(例如控制器15),而不是告訴我「system.project.label,text:'text here'」。對象發件人來控制發件人?

我有辦法解決這個問題,通過查看錶單上的每個控制器和匹配對象發件人到所述控制器,但這是一個相當長的解決方法。我很好奇,如果有人知道讓發件人報告它的控制位置的方法。

+0

什麼是「對象發件人」和「控制發件人」?我從來沒有聽說過有關c#的這些術語。 – Oded 2011-05-06 18:20:56

+1

@Oded我認爲他在談論事件處理程序委託的第一個參數。 – 2011-05-06 18:21:57

+0

這是Windows窗體中的事件 - 我假設。 – Aliostad 2011-05-06 18:21:58

回答

6

假設您正在談論事件處理函數的參數object sender,那麼您總是可以將其轉換爲控件。

if(sender is Control) 
{ 
    var myControl = sender as Control; 
}