Creating Custom StartPage Extensions
I've been working on a custom start page sample that creates a new tab on the typical Visual Studio StartPage. This new tab integrates in Bing search functionality, letting developers type in their search query and performing a search. The results can either come up in the Visual Studio internal browser or the user's default browser (depending on a user setting). Along with the search ability, the page also shows the Bing image of the day, so that you can enjoy those scenic images in your favorite IDE. So, if you'd like to see this custom start page in action, you can install it from the VS Gallery.
I created this custom StartPage using the Custom Start Page Project Template available on the VS Gallery. This project template lets you quickly set up a start page that is similar in functionality as the Start Page that ships with Visual Studio, along with a new tab for the custom content that you want to add. This allows you to create start pages that fit in well with the VS user interface. But, the start page is all XAML, so you can custom or completely rewrite the start page to look exactly how you wish.
This topic on MSDN gives a good step-by-step process on how to use the Custom Start Page Template.
Along the way while working on this custom start page, I ran across some interesting topics (a couple that I previously blogged about and a good MSDN article):
- Get a ServiceProvider from the VS Start Page
- Saving User Setting on a Start Page
- Launch a Url in the VS Internal Browser
Overall, using the template makes it really easy to create a full featured start page, and let's you concentrate on implementing the custom functionality you want to surface and not on the infrastructure to get a start page up and running. And, then your just developing a custom WPF control with XAML and code-behind, so it really straightforward. Also, the template automatically builds a .VSIX file for you. This is the new extension deployment framework in Visual Studio 2010, so you can take this .VSIX file and directly upload to the VS Gallery to share you custom start page with the world.
The one drawback of the custom start page deployment is that the new page doesn't automatically get set as your page. You need to go set it yourself. The following steps describe how to switch from the default Start Page to the Bing Start Page.
1. On the Tools menu, click Options.
2. On the left side of the Options dialog box, expand the Environment node, and then click Startup.
3. In the Customize Start Page list, select ‘[Installed Extension] Bing Start Page’
4. Click OK.