use*_*018 5 c# visual-studio-addins visual-studio-2010 visual-studio-extensions
我正在构建一个Visual Studio扩展,我对如何在Visual Studio启动时显示对话框感到难过.
它的主要用途是当Visual Studio启动时,我的扩展将检查更新,如果发现更新,则会出现一个对话框.
有关扩展的信息非常稀缺,所以我不知道如何做到这一点.我正在使用C#.
编辑:我已经尝试将包含所有命令代码/回调的包文件中的代码添加到它的初始化事件中,它在visual studio看起来甚至已加载之前显示对话框,并且在我关闭之前不会继续加载.我觉得我越来越近了.
他们是一个扩展启动命令,我可以在VSCT文件中创建,有点像菜单项吗?
我弄清楚了我的问题.由于缺乏信息,它经历了大量的试验和错误.我最初尝试过OnStartupcomplete()事件,但它不适用于我,因此我来到这里.它不起作用的原因是因为DTE对象在那时没有被初始化.所以我能够创建对象并添加处理程序.
[ProvideAutoLoad(Microsoft.VisualStudio.Shell.Interop.UIContextGuids.NoSolution)]
[ProvideAutoLoad(VSConstants.UICONTEXT.SolutionExists_string)]
protected override void Initialize()
{
//DTE gets called
var dte = (EnvDTE.DTE)GetService(typeof(EnvDTE.DTE));
_EventsObj = dte.Events.DTEEvents;
_EventsObj.OnStartupComplete += OnStartupComplete;
}
public void OnStartupComplete()
{
//This is the code to launch the dialog.
EvaluationDialog EvalForm = new EvaluationDialog();
EvalForm.ShowDialog();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2072 次 |
| 最近记录: |