Класс SPDocTemplateCollection
Представляет коллекцию шаблонов документов.
Иерархия наследования
System.Object
Microsoft.SharePoint.Administration.SPAutoSerializingObject
Microsoft.SharePoint.SPBaseCollection
Microsoft.SharePoint.SPDocTemplateCollection
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
Public Class SPDocTemplateCollection _
Inherits SPBaseCollection
'Применение
Dim instance As SPDocTemplateCollection
public class SPDocTemplateCollection : SPBaseCollection
Примеры
В следующем примере кода собирает в массив все шаблоны документов всех узлов семейства узлов и перебирает элементы массива, чтобы отобразить свойства каждого шаблона.
В примере предполагается существование страница ASPX, которая содержит элемент управления label с именем Label1.
В этом примере требуется директивы using (Imports в Visual Basic) для пространства имен Microsoft.SharePoint и 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();
}
Примечание
Некоторые объекты реализуют интерфейс IDisposable и следует избегать сохранения этих объектов в памяти, после они больше не нужны. Disposing Objectsсведения о рекомендованные методы программирования, см.
Потокобезопасность
Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.