Skip to content

Commit 556ef73

Browse files
v-thepetghogen
andauthored
Visual Studio freshness #1 (#13815)
* edit * edits * add customer intent * Update docs/ide/how-to-create-item-templates.md Co-authored-by: Gordon Hogenson <[email protected]> * Update docs/ide/how-to-create-item-templates.md Co-authored-by: Gordon Hogenson <[email protected]> --------- Co-authored-by: Gordon Hogenson <[email protected]>
1 parent aecce80 commit 556ef73

File tree

1 file changed

+49
-73
lines changed

1 file changed

+49
-73
lines changed
Lines changed: 49 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1,89 +1,72 @@
11
---
2-
title: Create item templates with Export Template Wizard
3-
description: Use the Export Template Wizard to create an item template in Visual Studio, and enable the template to be used in a Universal Windows App project.
4-
ms.date: 05/20/2024
2+
title: Create item templates
3+
description: Learn how to create, edit, and use item templates in Visual Studio projects.
4+
ms.date: 04/11/2025
55
ms.topic: how-to
66
helpviewer_keywords:
77
- item templates [Visual Studio], creating
88
author: ghogen
99
ms.author: ghogen
1010
manager: mijacobs
1111
ms.subservice: general-ide
12+
13+
#customer intent: As a developer, I want to create and use item templates in Visual Studio, so I can easily reuse project items in other projects.
1214
---
1315
# Create item templates
1416

15-
This article shows you how to create an item template by using the **Export Template Wizard**. If your template will consist of multiple files, see [How to: Create multi-file item templates](../ide/how-to-create-multi-file-item-templates.md).
17+
This article shows you how to create an item template by using the **Export Template Wizard** or manually, and how to edit and use item templates. If your template consists of multiple files, also see [How to: Create multi-file item templates](how-to-create-multi-file-item-templates.md).
1618

17-
## Add an item template to the Add New Item dialog box
19+
## Add an item template
1820

1921
1. Create or open a project in Visual Studio.
22+
1. Select **Project** > **Add New Item** or press **Ctrl**+**Shift**+**A**.
23+
1. In the **Add New Item** dialog box, select an item and then select **Add** to add it to the project.
24+
1. Modify the item as desired, and indicate where in the item, if anywhere, parameter replacement should take place. For more information, see [How to: Substitute parameters in a template](how-to-substitute-parameters-in-a-template.md).
25+
1. Save the item.
26+
1. Select **Project** > **Export Template**. The **Export Template Wizard** opens.
27+
1. On the **Choose Template Type** page, choose **Item Template**, select the project that contains the item, and then select **Next**.
28+
1. On the **Select Item To Export** page, choose the item you want to create a template for, and then select **Next**.
29+
1. On the **Select Item References** page, select any assembly references to include in the template, and then select **Next**.
30+
1. On the **Select Template Options** page:
2031

21-
1. Add an item to the project, and modify it if you want to.
22-
23-
1. Modify the code file to indicate where parameter replacement should take place. For more information, see [How to: Substitute parameters in a template](../ide/how-to-substitute-parameters-in-a-template.md).
24-
25-
1. On the **Project** menu, choose **Export Template**.
32+
- Enter the template name and optional description, icon image, and preview image.
2633

27-
1. On the **Choose Template Type** page, choose **Item Template**, select the project that contains the item, and then choose **Next**.
34+
Icon files for items are *.ico* files, as described in [Images and icons for Visual Studio](../extensibility/ux-guidelines/images-and-icons-for-visual-studio.md#file-types). The preview image is a 200 x 200 image that appears in the **Add New Item** dialog box. You can download the [Visual Studio image library](https://www.microsoft.com/download/details.aspx?id=35825) to get icons consistent with Visual Studio style.
2835

29-
1. On the **Select Item To Export** page, choose the item you want to create a template for, and then choose **Next**.
36+
- Select whether to **Automatically import the template into Visual Studio** and **Display an explorer window in the output files folder**.
3037

31-
1. On the **Select Item References** page, select the assembly references to include in the template, and then choose **Next**.
38+
1. Select **Finish**.
3239

33-
1. On the **Select Template Options** page, enter the template name and optional description, icon image and preview image, and then choose **Finish**. Icon files for items are `.ico` files, as described in [Images and icons for Visual Studio - file types](../extensibility/ux-guidelines/images-and-icons-for-visual-studio.md#file-types). The preview image is a 200 x 200 image that will appear in the **Add New Item** dialog box.
40+
The template files are compressed into a *.zip* file and copied to the directory shown in the wizard under **Output location**. The default location is *%USERPROFILE%\Documents\Visual Studio \<version\>\My Exported Templates*.
3441

35-
You can look in the [Visual Studio image library](../designers/the-visual-studio-image-library.md) for icons consistent with the Visual Studio style.
42+
If you selected **Automatically import the template into Visual Studio**, the *.zip* file is also added to the user *ItemTemplates* directory. The default location is *%USERPROFILE%\Documents\Visual Studio \<version\>\Templates\ItemTemplates*.
3643

37-
The files for the template are added to a *.zip* file and copied to the directory you specified in the wizard. The default location is *%USERPROFILE%\Documents\Visual Studio \<version\>\My Exported Templates*.
44+
You can now use the item template in your projects.
3845

39-
1. If you did not select the option **Automatically import the template into Visual Studio** in the **Export Template Wizard**, locate the exported template. Then, copy it to the user item template directory. The default location is *%USERPROFILE%\Documents\Visual Studio \<version\>\Templates\ItemTemplates*.
46+
## Use the item template
4047

48+
1. If you didn't select **Automatically import the template into Visual Studio** when you created the template, copy the *.zip* file to your *ItemTemplates* directory. The default location is *%USERPROFILE%\Documents\Visual Studio \<version\>\Templates\ItemTemplates*.
4149
1. Close Visual Studio and then reopen it.
50+
1. Create a new project, or open an existing project, and select **Project** > **Add New Item**
51+
1. Select the item template from the **Add New Item** dialog box. If you added a description in the **Export Template Wizard**, the description appears on the right side of the dialog box.
52+
1. Select **Add** to add the template item to your project.
4253

43-
1. Create a new project, or open an existing project, and then choose **Project** > **Add New Item** or press **Ctrl**+**Shift**+**A**.
44-
45-
The item template appears in the **Add New Item** dialog box. If you added a description in the **Export Template Wizard**, the description appears on the right side of the dialog box.
46-
47-
## Enable the item template to be used in a Universal Windows App project
48-
49-
The wizard does much of the work to create a basic template, but in many cases you need to manually modify the *.vstemplate* file after you have exported the template. For example, if you want the item to appear in the **Add New Item** dialog for a Universal Windows App project, you have to perform a few extra steps.
50-
51-
1. Follow the steps in the previous section to export an item template.
52-
53-
1. Extract the *.zip* file that was created, and open the *.vstemplate* file in Visual Studio.
54-
55-
1. For a C# Universal Windows project, add the following XML inside the `<TemplateData>` element:
56-
57-
```xml
58-
<TemplateID>Microsoft.CSharp.Class</TemplateID>
59-
```
60-
61-
1. In Visual Studio, save the *.vstemplate* file and close it.
62-
63-
1. Copy and paste the *.vstemplate* file back to the *.zip* file.
54+
## Edit the .vstemplate file
6455

65-
If the **Copy File** dialog box appears, choose the **Copy and Replace** option.
56+
The wizard creates a basic template, but in some cases you need to manually modify the *.vstemplate* file after you export the template. For example, if you want the item to appear in the **Add New Item** dialog for a Universal Windows App project, you must edit the *.vstemplate* file.
6657

67-
You can now add an item based on this template to a Universal Windows project from the **Add New Item** dialog box.
58+
1. Extract the exported item template *.zip* file, and open the *.vstemplate* file in Visual Studio.
59+
1. Edit the file as needed. For a C# Universal Windows project, add `<TemplateID>Microsoft.CSharp.Class</TemplateID>` inside the `<TemplateData>` element.
60+
1. Save and close the *.vstemplate* file, and replace it in the *.zip* file.
6861

69-
## Enable templates for specific project subtypes
62+
### Enable templates for specific project subtypes
7063

71-
You can specify that your template should only appear for only certain project subtypes, such as Windows, Office, Database, or Web.
64+
You can edit the *.vstemplate* file to specify that your item template appears only for certain project subtypes, such as Windows, Office, Database, or Web.
7265

73-
1. Locate the `ProjectType` element in the *.vstemplate* file for the item template.
66+
1. Open the *.vstemplate* file for editing.
67+
1. Add a [ProjectSubType](../extensibility/projectsubtype-element-visual-studio-templates.md) element immediately after the `ProjectType` element, with value `Windows`, `Office`, `Database`, or `Web`. For example: `<ProjectSubType>Database</ProjectSubType>`.
7468

75-
1. Add a [ProjectSubType](../extensibility/projectsubtype-element-visual-studio-templates.md) element immediately after the `ProjectType` element.
76-
77-
1. Set the text value of the element to one of the following values:
78-
79-
- Windows
80-
- Office
81-
- Database
82-
- Web
83-
84-
For example: `<ProjectSubType>Database</ProjectSubType>`.
85-
86-
The following example shows an item template for **Office** projects.
69+
The following example shows a *.vstemplate* file for `Office` projects.
8770

8871
```xml
8972
<VSTemplate Version="2.0.0" Type="Item" Version="2.0.0">
@@ -103,26 +86,19 @@ The following example shows an item template for **Office** projects.
10386

10487
## Manually create an item template
10588

106-
In some cases you may want to create an item template manually, from scratch.
107-
108-
1. Create a project and project item.
109-
110-
2. Modify the project item until it is ready to be saved as a template.
111-
112-
3. Modify the code file to indicate where parameter replacement should occur, if anywhere. For more information about parameter replacement, see [How to: Substitute parameters in a template.](../ide/how-to-substitute-parameters-in-a-template.md)
113-
114-
4. Create an XML file and save it with a *.vstemplate* file extension in the same directory as your project item file.
115-
116-
5. Edit the *.vstemplate* XML file to provide item template metadata. For more information, see [Template schema reference (extensibility)](../extensibility/visual-studio-template-schema-reference.md) and the example in the previous section.
117-
118-
6. Save the *.vstemplate* file and close it.
119-
120-
7. In **Windows Explorer**, select the files you want to include in your template. Right-click the selection, and choose **Send to** > **Compressed (zipped) folder**. The files that you selected are compressed into a *.zip* file.
89+
Instead of using the wizard, you can create an item template manually from scratch.
12190

122-
8. Copy the *.zip* file and paste it in the user item template location. The default directory is *%USERPROFILE%\Documents\Visual Studio 2022\Templates\ItemTemplates*. For more information, see [How to: Locate and organize project and item templates](../ide/how-to-locate-and-organize-project-and-item-templates.md).
91+
1. Create a project and add an item.
92+
1. Modify the item as desired, such as adding where any parameter replacement should take place, and save the item.
93+
1. Create an XML file and save it with a *.vstemplate* file extension in the same directory as your project item file.
94+
1. Add item template metadata to the *.vstemplate* XML file, as shown in the preceding example. For more information, see [Template schema reference (extensibility)](../extensibility/visual-studio-template-schema-reference.md).
95+
1. Save and close the *.vstemplate* file.
96+
1. In Windows Explorer, select the files you want to include in your template, including the *.vstemplate* file. Right-click the selection and select **Compress to** > **ZIP File**.
97+
1. Copy the resulting *.zip* file and paste it in the Visual Studio user item template location. The default directory is *%USERPROFILE%\Documents\Visual Studio \<version>\Templates\ItemTemplates*.
12398

12499
## Related content
125100

126-
- [Create project and item templates](../ide/creating-project-and-item-templates.md)
127-
- [How to: Create multi-file item templates](../ide/how-to-create-multi-file-item-templates.md)
101+
- [Locate and organize project and item templates](how-to-locate-and-organize-project-and-item-templates.md)
102+
- [Create project and item templates](creating-project-and-item-templates.md)
103+
- [Create multi-file item templates](how-to-create-multi-file-item-templates.md)
128104
- [Visual Studio template schema reference (extensibility)](../extensibility/visual-studio-template-schema-reference.md)

0 commit comments

Comments
 (0)