我的主窗體上有很多自定義控件,它們利用事件來表示它們已完成處理。他們都分享這個相同的事件(約100控件左右)。如何找到引發事件的控件
主窗體消耗這個事件,但我沒有線索如何找到一個有效的方式來找到沒有真正低效的代碼引發事件的方法。
我的控件包含在名爲controlList
的List<T>
中,並託管在他們自己的項目中。
我的事件看起來像這樣:
public void OnTaskComplete(object sender, custom_control_project.TaskCompleteEventArgs e)
{
foreach (var control in controlList)
{
if (control.Visible) // <--- THIS IS WRONG! WHAT COULD THIS BE???
{
try
{
...// LOTS OF PROCESSING!
}
catch
{
...
}
finally
{
...
}
}
}
}
如果我想用更少的管制,我讓他們看不到和殘疾人,因此control.Visible
。
我該如何做到這一點,所以我只對一個控件提出了事件而不必處理那麼多不需要的迭代?
很簡單...感謝您的快速回復 – Shen