Share via


SPDocTemplateCollection - Classe

Représente une collection de modèles de document.

Hiérarchie d’héritage

System.Object
  Microsoft.SharePoint.Administration.SPAutoSerializingObject
    Microsoft.SharePoint.SPBaseCollection
      Microsoft.SharePoint.SPDocTemplateCollection

Espace de noms :  Microsoft.SharePoint
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

Syntaxe

'Déclaration
Public Class SPDocTemplateCollection _
    Inherits SPBaseCollection
'Utilisation
Dim instance As SPDocTemplateCollection
public class SPDocTemplateCollection : SPBaseCollection

Exemples

L'exemple de code suivant recueille dans un tableau de tous les modèles de document de tous les sites de la collection de sites actuelle, puis itère les éléments du tableau pour afficher les propriétés de chaque modèle.

L'exemple suppose l'existence d'une page .aspx qui contient un contrôle label nommé Label1.

Cet exemple requiert les directives using (Imports dans Visual Basic) pour les espaces de noms Microsoft.SharePoint et 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();
}

Notes

Certains objets implémentent l'interface IDisposable , et vous devez éviter de conserver ces objets dans la mémoire après que qu'ils ne sont plus nécessaires. Pour plus d'informations sur les bonnes pratiques de codage, consultez Disposing Objects.

Cohérence de thread

Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.

Voir aussi

Référence

SPDocTemplateCollection - Membres

Microsoft.SharePoint - Espace de noms