Metodo Solution3.GetProjectItemTemplate (String, String)
Restituisce un percorso del modello dell'elemento del progetto indicato.
Spazio dei nomi: EnvDTE90
Assembly: EnvDTE90 (in EnvDTE90.dll)
Sintassi
'Dichiarazione
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
Parametri
- TemplateName
Tipo: System.String
Nome del modello.
- Language
Tipo: System.String
Linguaggio utilizzato per scrivere il modello.
Valore restituito
Tipo: System.String
Nome completo del modello dell'elemento del progetto.
Implementa
Solution2.GetProjectItemTemplate(String, String)
Note
I modelli di progetto vengono memorizzati come file ZIP. Il metodo richiede che venga fornito il progetto indicandone nome e linguaggio e restituisce il percorso al modello.
I parametri di GetProjectItemTemplate possono essere forniti in vari modi come descritto di seguito:
Passare il GUID relativo a un progetto virtuale Visual Basic per Smart Device come parametro Language e il nome del file ZIP come TemplateName.
GetProjectItemTemplate("NETCFv2-Class.zip", "{3114F5B0-E435-4bc5-A03D-168E20D9BF83}");
Passare il GUID relativo a un progetto virtuale Visual Basic per Smart Device come parametro Language e la stringa "Class" come TemplateName. La stringa "Class" è derivata dalla gerarchia di cartelle ed è definita come la stringa dell'interfaccia utente. Altre stringhe di interfaccia utente sono "Pagina HTML" e "Schermata iniziale". Le stringhe di interfaccia utente sono dipendenti dalle impostazioni locali. L'utilizzo del nome del file ZIP è il modo più sicuro per passare il parametro TemplateName.
GetProjectItemTemplate("Class", "{3114F5B0-E435-4bc5-A03D-168E20D9BF83}");
Passare la stringa "VisualBasic" come parametro Language e il nome del file ZIP per il parametro TemplateName. Questa operazione è possibile perché il file NETCFv2-Class.zip è univoco per Smart Device.
GetProjectItemTemplate("NETCFv2-Class.zip", "VisualBasic/SmartDevice-NETCFv2");
È possibile creare anche modelli personalizzati per gli elementi del progetto. Per specificare la directory in cui archiviare i modelli, scegliere Opzioni dal menu Strumenti. Nel riquadro sinistro della finestra di dialogo Opzioni scegliere Progetti e soluzioni. Digitare i percorsi relativi ai modelli nelle caselle Percorso dei modelli di elemento utente di Visual Studio. In alternativa, è possibile accettare il percorso predefinito.
I modelli personalizzati necessitano di nomi file univoci che non siano in conflitto con i nomi file definiti in:
<unità>:\Programmi\Microsoft Visual Studio 9\Common7\IDE\ItemTemplates\Linguaggio.
Assicurarsi di utilizzare nomi file lunghi, anziché nel formato 8.3. Per ulteriori informazioni, vedere Creazione di modelli di progetti e di elementi.
Esempi
Per informazioni sulla modalità di esecuzione di questo codice di componente aggiuntivo, vedere Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione.
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);
}
}
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.
Vedere anche
Riferimenti
Overload GetProjectItemTemplate
Altre risorse
Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione