Я создаю визуальную студию 2010 надстройки для внутреннего использования в моей компании. Я хотел бы настроить заголовок главного окна, чтобы отобразить имя текущего проекта запуска. Я могу установить заголовок главного окна со следующим кодом:Есть ли событие, инициированное при изменении dte.Solution.SolutionBuild.StartupProjects?
DTE d = GlobalClass.dte2 as DTE;
IntPtr hWnd = new System.IntPtr(d.MainWindow.HWnd);
if (d.Solution.SolutionBuild.StartupProjects != null)
{
object[] sStartUpProject = (object[])d.Solution.SolutionBuild.StartupProjects;
string Caption = d.MainWindow.Caption + "Current Project: " + (string)sStartUpProject[0];
SendMessage(hWnd, WM_SETTEXT, new IntPtr(0), Caption);
}
Я могу стрелять этот код всякий раз, когда окно создается или активированную, но это не обновляет заголовок, если пользователь изменяет проект запуска в (или мою надстройку) и не перемещается в другое окно в Visual Studio. Я хочу, чтобы заголовок обновлялся, как только было сделано изменение.
Удалось вам решить эту проблему? – ravyoli 2011-10-17 09:44:48