我正在写一VS2008序(微波炉的使用),需要通知之后,目前的解决方案已经完成的负载。

我已经试过使用下列代码:

events = (Events2) applicationObject.Events
events.SolutionEvents.Opened += DoSomeWorkEvent;

不幸的是,它似乎是由于VS2005的事件引发当的解决方案开始载荷并不是当它完成。

一个简短的互联网搜索产生的 下线 这解释了问题并建议解决方案(检查每个项目的项目,看看它是否完成装载)。

这是最好的解决方案提供的或者是有更好的办法知道当一个解决方案已经装载完毕?

有帮助吗?

解决方案

我已经找到一个解决办法,解决这个问题-我已经创建了一个窗口。形式。计时器上运行的主要线和检查,如果该解决方案已经完成的负载。

private void TimerTick(object sender, EventArgs e)
{
   try
   {
       var solution = applicationObject.Solution;
       if (solution.IsOpen && string.IsNullOrEmpty(solution.FileName) == false)
       {
           timer.Stop();
           // insert logic here
       }
   }
   catch (Exception exception)
   {
       Console.WriteLine(exception);
   }
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top