Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I extend the project properties screen in Visual Studio?

When u view a project properties in Visual Studio u get a number of tabs.

The standard ones are "Application", "Build", "Build Events" etc.

It is also possible to add custom tabs. For example view the properties of a WebApplication or a VSIX project you get different (extra) tabs.

So how do I write a VSIX addin that adds a custom tab to the project properties windows?

like image 238
Simon Avatar asked Mar 16 '11 12:03

Simon


1 Answers

Check out this article: How to: Add and Remove Property Pages.

You create a page like so:

class DeployPropertyPage : Form, Microsoft.VisualStudio.OLE.Interop.IPropertyPage
{
    . . . . 
    //Summary: Return a stucture describing your property page.
    public void GetPageInfo(Microsoft.VisualStudio.OLE.Interop.PROPPAGEINFO[] pPageInfo)
    {
        PROPPAGEINFO info = new PROPPAGEINFO();
        info.cb = (uint)Marshal.SizeOf(typeof(PROPPAGEINFO));
        info.dwHelpContext = 0;
        info.pszDocString = null;
        info.pszHelpFile = null;
        info.pszTitle = "Deployment";  //Assign tab name
        info.SIZE.cx = this.Size.Width;
        info.SIZE.cy = this.Size.Height;
        if (pPageInfo != null && pPageInfo.Length > 0)
            pPageInfo[0] = info;
    }
}

And you register it like so:

[MSVSIP.ProvideObject(typeof(DeployPropertyPage), RegisterUsing = RegistrationMethod.CodeBase)]
like image 81
sheikhjabootie Avatar answered Sep 20 '22 11:09

sheikhjabootie