Clase SPDocTemplateCollection
Representa una colección de plantillas de documento.
Jerarquía de la herencia
System.Object
Microsoft.SharePoint.Administration.SPAutoSerializingObject
Microsoft.SharePoint.SPBaseCollection
Microsoft.SharePoint.SPDocTemplateCollection
Espacio de nombres: Microsoft.SharePoint
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
Public Class SPDocTemplateCollection _
Inherits SPBaseCollection
'Uso
Dim instance As SPDocTemplateCollection
public class SPDocTemplateCollection : SPBaseCollection
Ejemplos
En el ejemplo de código siguiente se recoge en una matriz de todas las plantillas de documento de todos los sitios de la colección de sitios actual y, a continuación, se recorre en iteración los elementos de matriz para mostrar las propiedades de cada plantilla.
El ejemplo supone la existencia de una página .aspx que contiene un control label denominado Label1.
En este ejemplo se requieren using directivas (Imports en Visual Basic) para los espacios de nombres Microsoft.SharePoint y Microsoft.SharePoint.Utilities .
Dim siteCollection As SPSite = SPControl.GetContextSite(Context)
Dim sites As SPWebCollection = siteCollection.AllWebs
Dim arrDocTemps As New ArrayList()
Dim site As SPWeb
For Each site In sites
Dim docTemps As SPDocTemplateCollection = site.DocTemplates
Dim i As Integer
For i = 0 To docTemps.Count - 1
arrDocTemps.Add(docTemps(i))
Next i
Next site
Dim docTemp As SPDocTemplate
For Each docTemp In arrDocTemps
Label1.Text += SPEncode.HtmlEncode(docTemp.Name) & " :: "
& docTemp.DefaultTemplate & "<BR>"
Next docTemp
SPSite oSiteCollection = SPContext.Current.Site;
SPWebCollection collWebsites = oSiteCollection.AllWebs;
ArrayList arrDocTemplates = new ArrayList();
foreach (SPWeb oWebsite in collWebsites)
{
SPDocTemplateCollection collDocTemplates = oWebsite.DocTemplates;
for (int intIndex = 0; intIndex < collDocTemplates.Count; intIndex++)
{
arrDocTemplates.Add(collDocTemplates[intIndex]);
}
foreach (SPDocTemplate oDocTemplate in arrDocTemplates)
{
Label1.Text += SPEncode.HtmlEncode(oDocTemplate.Name) +
" -- " + oDocTemplate.DefaultTemplate + "<BR>";
}
oWebsite.Dispose();
}
Nota
Determinados objetos implementan la interfaz de IDisposable y, a continuación, se debe evitar la conservación de estos objetos en la memoria que ya no se necesitan. Para obtener información acerca de buenas prácticas de codificación, vea Disposing Objects.
Seguridad para subprocesos
Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.