ItemOperations.AddNewItem 方法
向当前项目添加新项。
命名空间: EnvDTE
程序集: EnvDTE(在 EnvDTE.dll 中)
语法
声明
Function AddNewItem ( _
Item As String, _
Name As String _
) As ProjectItem
ProjectItem AddNewItem(
string Item,
string Name
)
ProjectItem^ AddNewItem(
[InAttribute] String^ Item,
[InAttribute] String^ Name
)
abstract AddNewItem :
Item:string *
Name:string -> ProjectItem
function AddNewItem(
Item : String,
Name : String
) : ProjectItem
参数
- Item
类型:System.String
可选。指向项的虚拟路径,该路径基于 UI 资源字符串(在下面的“备注”部分进行了定义),有时也如**“新建文件”**对话框的内容中所示,其格式为“category\templatename”。Category 来自对话框的左窗格,templatename 来自右窗格。例如,若要向 Visual Basic 项目中添加一个新的 HTML 文件,应使用“General\HTML Page”。 有关更多信息,请参见备注部分。
- Name
类型:System.String
可选。项添加到项目时使用的显示名称。
返回值
类型:EnvDTE.ProjectItem
一个 ProjectItem 对象。
备注
AddNewItem 模仿**“新建文件”对话框。 此对话框的内容因项目类型而异。 有两种方式可用于确定要放在 Item 参数中的值:在“新建文件”**对话框中查阅值,或在适当的 UI 资源文件中查阅值。
若要使用第一种方法将项添加到某些项目中,请在**“新建文件”**对话框中查看该项目的可用项。 “新建文件”对话框有两个窗格:“类别”和“模板”。 AddNewItem 方法的 Item 参数采用
按 "category\templatename" 格式。 Category通常来自对话框的左窗格(“类别”),templatename 来自右窗格(“模版”)。 例如,若要向 Visual Basic 项目中添加一个新的 HTML 文件,应使用“General\HTML Page”。 但是由于语言的差异,**“新建文件”**对话框中不能总是准确反映该参数的精确值。
获取 Item 参数的精确值的更一致和可靠的方法是,在每个编程语言的 UI 资源文件中查阅必需的字符串。 然后,将该值和要添加的项的名称结合使用,如在**“新建文件”和“添加新项”**对话框中显示的那样。 例如,要向项目中添加新的 Visual Basic 类文件,可以使用 AddNewItem("Visual Basic Items\Class", "test.vb")。 要向项目中添加新的 Visual C# 类文件,可以使用 AddNewItem("Visual C# Project Items\Class", test.cs");。
可以通过以下方式找到字符串“Visual Basic 项”(以及其他语言项):
对于 Visual Basic 文件,打开以下注册表项:HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\8.0\Projects\{F184B08F-C81C-45f6-A57F-5ABD9991F28F}\AdditemTemplates\TemplateDirs\{164B10B9-B200-11D0-8C61-00A0C91E29D5}\ /1。 默认值为 #3082。
在 Visual Studio 中使用资源编辑器打开文件 msvbprjui.dll。 为此,请浏览到该文件(选择“文件”->“打开”菜单上的“浏览...”),然后打开该文件。 打开“字符串表”节点,查找资源 ID 3082,它设置为“Visual Basic 项”。 这是要放在 AddNewItem 调用中的字符串。 此过程同样适用于 Visual C#、Visual C++ 和 Visual C# 项目系统,只是要使用的文件名和资源 ID 不同。
下面是 UI 资源文件的资源 ID 和位置的列表:
编程语言 |
UI 文件名 |
类的资源 ID |
---|---|---|
Visual Basic |
…\Program Files\Microsoft Visual Studio 8\VB\Bin\1033\msvbprojUI.dll |
3082 |
Visual C# |
…\Program Files\Microsoft Visual Studio 8\VC#\VCSPackages\1033\csprjui.dll |
2346 |
Visual C++ |
…\Program Files\Microsoft Visual Studio 8\VC\vcpackages\1033\VCProjectUI.dll |
10007 |
示例
Sub AddNewItemExample()
Dim ItemOp As ItemOperations
ItemOp = DTE.ItemOperations
ItemOp.AddNewItem("General\Text File", "A new text file")
End Sub
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。