Compartilhar via


Método Solution2.GetProjectItemTemplate

Retorna um caminho para o modelo de item de projeto indicado.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (em EnvDTE80.dll)

Sintaxe

'Declaração
Function GetProjectItemTemplate ( _
    TemplateName As String, _
    Language As String _
) As String
string GetProjectItemTemplate(
    string TemplateName,
    string Language
)
String^ GetProjectItemTemplate(
    String^ TemplateName, 
    String^ Language
)
abstract GetProjectItemTemplate : 
        TemplateName:string * 
        Language:string -> string 
function GetProjectItemTemplate(
    TemplateName : String, 
    Language : String
) : String

Parâmetros

  • Language
    Tipo: System.String
    O idioma usado para gravar o modelo.

Valor de retorno

Tipo: System.String
O nome completo do modelo de item de projeto.

Comentários

Modelos de projeto são armazenados como arquivos zip.Este método solicita o projeto por nome e o idioma e retorna o caminho para o modelo.

Os parâmetros do GetProjectItemTemplate podem ser fornecidos em um número de maneiras diferentes, como mostrado abaixo:

  • Passar o GUID para um projeto de dispositivo inteligente Visual Basic Virtual como o Language parâmetro e o nome do arquivo zip, como o TemplateName.

    GetProjectItemTemplate("NETCFv2-Class.zip", "{3114F5B0-E435-4bc5-A03D-168E20D9BF83}");
    
  • Passar o GUID para um projeto de dispositivo inteligente Visual Basic Virtual como o Language parâmetro e a seqüência de caracteres "Class" como o TemplateName.A seqüência de caracteres "Class" é derivado da hierarquia de pastas e é conhecido como a interface do usuário cadeia de caracteres (UI).Outras strings da interface do usuário são "Página HTML" e "Tela inicial".As seqüências de caracteres de interface do usuário são dependente da localidade.Usando o nome do arquivo zip é a maneira mais segura para passar o TemplateName parâmetro.

    GetProjectItemTemplate("Class", "{3114F5B0-E435-4bc5-A03D-168E20D9BF83}");
    
  • Passar a seqüência de caracteres "VisualBasic" como o Language parâmetro e o nome do arquivo zip para a TemplateName parâmetro.Isso funciona porque a Class.zip de NETCFv2 é exclusiva para dispositivos inteligentes.

    GetProjectItemTemplate("NETCFv2-Class.zip", "VisualBasic/SmartDevice-NETCFv2");
    

Você também pode criar modelos personalizados para itens de projeto.Para especificar o diretório no qual você armazenará seus modelos, clique em Opções sobre o Ferramentas menu.No painel esquerdo da Opções caixa de diálogo, clique em projetos e soluções.Digite os caminhos para os seus modelos na local de modelos de item de usuário Visual Studio caixas.Como alternativa, você pode aceitar o local padrão.

Modelos personalizados requerem nomes de arquivo exclusivo que não entrem em conflito com os nomes de arquivo definidos em:

<unidade>: \Arquivos de Programas\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates\idioma.

Certifique-se de que você use nomes de arquivo longos (em oposição ao que esteja em formato 8.3).Para obter mais informações, consulte Creating Project and Item Templates.

Exemplos

Para obter informações sobre como executar esse código de suplemento, consulte Como: compilar e executar os exemplos de código de modelo de objeto de automação.

O exemplo a seguir adiciona uma página HTML a uma solução.

Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    SaveAsExample(_applicationObject)
End Sub

Sub SaveAsExample(ByVal dte As DTE2)
    ' This add-in adds an HTML page to a solution.
    ' Open a Visual Basic solution in Visual Studio
    ' before running this example.

    Dim soln As Solution2 = _
    CType(_applicationObject.Solution, Solution2)
    Dim prj As Project
    Dim prjItem As ProjectItem
    Dim itemPath As String

    Try
        prj = soln.Projects.Item(1)
        itemPath = soln.GetProjectItemTemplate("HTMLPage.zip", _
        "VisualBasic")
        ' Create a new project item based on the template. 
        ' (In this case, an HTML page.)
        prjItem =  _
        prj.ProjectItems.AddFromTemplate(itemPath, "MyNewHtml")

    Catch ex As SystemException
        MsgBox("ERROR: " & ex.ToString())
    End Try
End Sub
using System.Windows.Forms;
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    SolnGetProjetItemExample((DTE2)_applicationObject);
}
public void SolnGetProjetItemExample(DTE2 dte)
{
    // This add-in adds an item to a Visual Basic solution.
    // Open a Visual Basic solution in Visual Studio 
    // before running this example.
 
    Solution2 soln = (Solution2)_applicationObject.Solution;
    Project prj;
    ProjectItem prjItem;
    string itemPath;
    try
    {

        prj = soln.Projects.Item(1);
        itemPath = 
soln.GetProjectItemTemplate("HTMLPage.zip", "VisualBasic");
        // Create a new project item based on the template. 
        // (In this case, an HTML page.)
        prjItem = 
prj.ProjectItems.AddFromTemplate(itemPath, "MyNewHtml");

    }
    catch (SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

Segurança do .NET Framework

Consulte também

Referência

Solution2 Interface

Namespace EnvDTE80