Freigeben über


Solution3.GetProjectItemTemplate-Methode

Gibt einen Pfad zur angegebenen Projektelementvorlage zurück.

Namespace:  EnvDTE90
Assembly:  EnvDTE90 (in EnvDTE90.dll)

Syntax

'Declaration
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

Parameter

  • TemplateName
    Typ: String

    Der Name der Vorlage.

  • Language
    Typ: String

    Die Sprache, die zum Schreiben der Vorlage verwendet wurde.

Rückgabewert

Typ: String
Der vollständige Name der Projektelementvorlage.

Hinweise

Projektvorlagen können als ZIP-Dateien gespeichert werden. Bei dieser Methode werden Sie zur Eingabe des Projekts nach Name und Sprache aufgefordert, und es wird der Pfad zu der Vorlage zurückgegeben.

Die Parameter von GetProjectItemTemplate können auf unterschiedliche Art und Weise bereitgestellt werden, wie unten dargestellt:

  • Übergeben Sie die GUID für ein virtuelles Visual Basic-Projekt für intelligente Geräte als Language-Parameter und den Namen der ZIP-Datei als TemplateName.

    GetProjectItemTemplate("NETCFv2-Class.zip", "{3114F5B0-E435-4bc5-A03D-168E20D9BF83}");
    
  • Übergeben Sie die GUID für ein virtuelles Visual Basic-Projekt für intelligente Geräte als Language-Parameter und die Zeichenfolge "Class" als TemplateName. Die Zeichenfolge "Class" ist von der Ordnerhierarchie abgeleitet und wird als Benutzeroberflächenzeichenfolge bezeichnet. Andere Benutzeroberflächenzeichenfolgen sind "HTML Page" und "Splash Screen". Die Benutzeroberflächenzeichenfolgen sind vom Gebietsschema abhängig. Der TemplateName-Parameter wird am sichersten übergeben, wenn der Name der ZIP-Datei verwendet wird.

    GetProjectItemTemplate("Class", "{3114F5B0-E435-4bc5-A03D-168E20D9BF83}");
    
  • Übergeben Sie die Zeichenfolge "VisualBasic" als Language-Parameter und den Namen der ZIP-Datei als TemplateName-Parameter. Dies funktioniert, weil NETCFv2-Class.zip für intelligente Geräte eindeutig ist.

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

Sie können auch benutzerdefinierte Vorlagen für Projektelemente erstellen. Um den Speicherort für die Vorlagen anzugeben, klicken Sie im Menü Extras auf Optionen. Klicken Sie im linken Bereich des Dialogfelds Optionen auf Projekte und Projektmappen. Geben Sie die Pfade für die Vorlagen in den Feldern Speicherort von Visual Studio-Benutzerelementvorlagen ein. Sie können auch den Standardspeicherort übernehmen.

Für benutzerdefinierte Vorlagen sind eindeutige Dateinamen erforderlich, sodass keine Konflikte mit den unter den folgenden Speicherorten definierten Dateinamen auftreten:

<Laufwerk>:\Programme\Microsoft Visual Studio 9\Common7\IDE\ItemTemplates\Sprache.

Verwenden Sie lange Dateinamen (keine 8.3-Namen). Weitere Informationen finden Sie unter Creating Project and Item Templates.

Beispiele

Informationen zum Ausführen des Add-In-Codes finden Sie unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.

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 Solution3 = _
    CType(_applicationObject.Solution, Solution3)
    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.
 
    Solution3 soln = (Solution3)_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);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

Solution3 Schnittstelle

EnvDTE90-Namespace

Weitere Ressourcen

Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell