ProjectSubType Element (Visual Studio Templates)


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at ProjectSubType Element (Visual Studio Templates).

Classifies the template into a subcategory of the value specified in the ProjectType element.


<ProjectSubType> SubType </ProjectSubType>  

The following sections describe attribute, child elements, and parent elements.



Child Elements


Parent Elements

TemplateDataRequired element.

Categorizes the template and defines how it displays in either the New Project or the Add New Item dialog box.

A text value is required.

This value specifies the subcategory of the template.

ProjectSubType is an optional child element of TemplateData.

The ProjectSubType element provides a subcategory to the ProjectType element. This value can include:

  • SmartDevice-NETCFv1: Specifies that the template targets the .NET Compact Framework version 1.0.

  • SmartDevice-NETCFv2: Specifies that the tempalate targets the .NET Compact Framework version 2.0.

If a template contains a ProjectType element with a value of Web, the ProjectSubType element specifies the programming language of the template. This element can have the following values:

  • CSharp: Specifies that the template creates a Visual C# Web project or item.

  • VisualBasic: Specifies that the template creates a Visual Basic Web project or item.

The following example shows the metadata for a project template for a Visual C# device application targeting the .NET Compact Framework version 2.0.

<VSTemplate Type="Project" Version="3.0.0"  
        <Name>My template</Name>  
        <Description>A basic device template</Description>  
        <Project File="MyTemplate.csproj">  

Visual Studio Template Schema Reference
Creating Project and Item Templates
ProjectType Element (Visual Studio Templates)