ProjectItem 元素 (Visual Studio 项目模板)
指定项目模板中包含的文件。
注意
该 ProjectItem
元素接受不同的属性,具体取决于模板是用于项目还是项。 本主题介绍 ProjectItem
项目模板的元素。 有关项模板元素的说明ProjectItem
,请参阅 ProjectItem 元素(Visual Studio 项模板)。
<VSTemplate><TemplateContent><ProjectItem><>
语法
<ProjectItem
TargetFileName="TargetFileName.ext"
ReplaceParameters="true/false"
OpenInEditor="true/false"
OpenInWebBrowser="true/false"
OpenInHelpBrowser="true/false"
OpenOrder="Value">
FileName.ext
</ProjectItem>
特性和元素
以下各部分描述了特性、子元素和父元素。
特性
属性 | 描述 |
---|---|
TargetFileName |
可选特性。 指定从模板创建项目时项目项的名称和路径。 此属性可用于创建与模板 .zip 文件中的目录结构不同的目录结构,或使用参数替换来创建项名称。 |
ReplaceParameters |
可选特性。 一个布尔值,该值指定项是否具有从模板创建项目时必须替换的参数值。 默认值是 false 。 |
OpenInEditor |
可选特性。 一个布尔值,该值指定在从模板创建项目时是否应在 Visual Studio 的相应编辑器中打开该项。 在值为 . true . 的项OpenInEditor 上忽略这些OpenInWebBrowser 属性和OpenInHelpBrowser 属性。默认值为 false 。 |
OpenInWebBrowser |
可选特性。 一个布尔值,该值指定在从模板创建项目时是否应打开 Web 浏览器。 只有位于项目的本地 HTML 文件和文本文件才能在 Web 浏览器中打开。 无法使用此属性打开外部 URL。 默认值为 false 。 |
OpenInHelpBrowser |
可选属性。 一个布尔值,该值指定从模板创建项目时是否应在帮助查看器中打开该项。 只有位于项目的本地 HTML 文件和文本文件才能在帮助浏览器中打开。 无法使用此属性打开外部 URL。 默认值为 false 。 |
OpenOrder |
可选属性。 指定一个数值,该值表示项目将在各自的编辑器中打开的顺序。 所有值必须是 10 的倍数。 首先打开值较高的 OpenOrder 项。 |
子元素
无。
父元素
元素 | 描述 |
---|---|
Project | 指定要添加到项目的文件或目录。 |
文本值
需要一个文本值。
一个 string
表示模板 .zip 文件中文件的名称或路径。
注解
ProjectItem
是一个可选子级 Project
。
该 TargetFileName
属性可用于创建与模板 .zip 文件中的目录结构不同的目录结构。 例如,如果 文件 MyFile.vb 存在于模板 .zip 文件的根目录中,但希望该文件放置在从模板创建的所有项目中名为 CustomFiles 的目录中,则可以使用以下 XML:
<ProjectItem TargetFileName="CustomFiles\MyFile.vb">MyFile.vb</ProjectItem>
该 TargetFileName
属性还可用于重命名文件名中包含国际字符的文件。 例如,模板 .zip 文件不能包含具有 Unicode 字符的文件名,因此必须先重命名该文件,然后才能将其压缩到 .zip 文件中。 该 TargetFileName
属性可用于将文件名设置回原始 Unicode 文件名。
该 TargetFileName
属性还可用于使用参数重命名文件。 以下过程说明如何根据项目名称将模板 .zip 文件的根目录中存在的 MyFile.vb 文件重命名为文件名。
使用参数重命名文件
在 .vstemplate 文件中使用以下 XML:
<ProjectItem TargetFileName="$safeprojectname$.vb">MyFile.vb</ProjectItem>
在文本编辑器或 Visual Studio 中打开项目文件(.vbproj for a Visual Basic 项目)。
在项目文件中找到类似于以下 XML 的行:
<Compile Include="MyFile.vb">
将代码行替换为以下 XML:
<Compile Include="$safeprojectname$.vb">
从此模板创建项目时,文件名将基于用户在 “新建项目 ”对话框中输入的名称,并删除所有不安全字符和空格。 有关详细信息,请参阅 模板参数。
示例
下面的示例说明了 Visual C# 应用程序的项目模板的元数据。
<VSTemplate Type="Project" Version="3.0.0"
xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
<TemplateData>
<Name>My template</Name>
<Description>A basic starter kit</Description>
<Icon>TemplateIcon.ico</Icon>
<ProjectType>CSharp</ProjectType>
</TemplateData>
<TemplateContent>
<Project File="MyStarterKit.csproj">
<ProjectItem ReplaceParameters="true">Form1.cs<ProjectItem>
<ProjectItem>Form1.Designer.cs</ProjectItem>
<ProjectItem>Program.cs</ProjectItem>
<ProjectItem>Properties\AssemblyInfo.cs</ProjectItem>
<ProjectItem>Properties\Resources.resx</ProjectItem>
<ProjectItem>Properties\Resources.Designer.cs</ProjectItem>
<ProjectItem>Properties\Settings.settings</ProjectItem>
<ProjectItem>Properties\Settings.Designer.cs</ProjectItem>
</Project>
</TemplateContent>
</VSTemplate>