65.9K
CodeProject 正在变化。 阅读更多。
Home

关闭 Visual Studio 的开始页插件

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.16/5 (15投票s)

2009 年 3 月 26 日

CPOL

2分钟阅读

viewsIcon

33709

downloadIcon

113

一个自定义插件, 用于在打开项目后关闭 Visual Studio 中的开始页

引言

这是一个简单的 Visual Studio 插件,它会在您在 Visual Studio 中打开解决方案时自动关闭启动页。

我喜欢 Visual Studio 和启动页,但为什么没有一个选项可以在打开解决方案后关闭启动页,我实在想不通。如果您需要重新打开启动页,只需转到“视图”菜单,选择“其他窗口”,然后单击“启动页”。

Using the Code

要从头开始构建此应用程序,请在 Visual Studio 中选择“新建”项目。然后浏览到“其他项目类型\可扩展性”,并选择“Visual Studio 插件”。然后将您的项目命名为“StartPageCloser”。

接下来,插件向导将启动,对于此项目,我们将选择 C# 代码。

接下来,仅选择 Microsoft Visual Studio。

为您的插件提供一个好的描述。

将您的插件设置为在启动时加载。

关于对话框是可选的。然后单击“完成”以启动您的新插件项目。

您需要在此时添加您的代码。首先添加所需的 private 变量来捕获打开解决方案事件。您可以将此代码添加到 Connect 类的顶部或底部。您应该已经在 Connect 类中,如果不在,则打开 Connect.cs 文件。

    //
    // Private variables used to capture the Solution events
    //        
    private Events2 events; 
    private SolutionEvents solutionEvents;

接下来,转到“OnConnection”事件函数,并在该行之后添加以下代码
_addInInstance = (AddIn)addInInst;

    // Capture our Events
    events = (Events2)_applicationObject.Events;
    solutionEvents = events.SolutionEvents;

    // Capture our Solution Opened Event
    solutionEvents.Opened += 
	new _dispSolutionEvents_OpenedEventHandler(SolutionEvents_Opened);        

最后,您只需要添加您的 SolutionEvents_Opened 函数。

/// <summary>
/// Our Solution has been opened
/// </summary>
private void SolutionEvents_Opened()
{
	// Find the Start Page and Close it
	if (_applicationObject.Windows.Item
		(EnvDTE80.WindowKinds.vsWindowKindKindStartPage) != null)
	{
		// Close the Start Page
		_applicationObject.Windows.Item
			(EnvDTE80.WindowKinds.vsWindowKindKindStartPage).Close
			(vsSaveChanges.vsSaveChangesNo);
	}
}

现在您可以编译并使用您的新插件了。编译后,插件将被添加到您的 Visual Studio Addins 文件夹中。这将指向您的插件 DLL 的位置。完成操作后,您可以将您的项目更改为“发布”模式。

关注点

有时,为了编译您的插件,您需要关闭 Visual Studio,并确保它没有设置为在启动时加载您的插件,方法是转到“工具”菜单和“插件管理器...”并取消选中您的插件的“启动”。然后关闭并重新打开 Visual Studio 并打开您的项目。现在您将能够编译。只需记住在完成后重新选中“启动”。

历史

  • 2009 年 3 月 26 日:初始发布
© . All rights reserved.