Вот простой пример кода C # в Visual Studio 2008:
public partial class Form1 : Form
{
private static System.Timers.Timer TestTimer;
public Form1()
{
InitializeComponent();
TestTimer = new System.Timers.Timer();
TestTimer.Elapsed += DoSomething;
}
private void DoSomething(Object source, EventArgs e)
{
}
}
Если я щелкну правой кнопкой мыши на DoSomething
, назначенном в качестве обработчика, и выберу Go to definition
, VS найдет тело DoSomething
.Пока все хорошо.
Если я щелкну по нему правой кнопкой мыши и Find all references
, то ничего не найдется.(!?)
Если я выполняю одно из этих действий для тела самого DoSomething
, оно находит только себя, а не присваивание в качестве обработчика события.
Я что-то упускаю из виду?Может быть, установка?Во всех других случаях, когда вы запрашиваете all references
, это включает определение и все остальные ссылки.Я понимаю, что задание мыслит с точки зрения делегатов, но это кажется противоречивым.Было бы очень удобно легко найти, когда что-то было назначено в качестве обработчика.