SPFieldCollection - Classe
Représente une collection d'objets SPField .
Hiérarchie d’héritage
System.Object
Microsoft.SharePoint.Administration.SPAutoSerializingObject
Microsoft.SharePoint.SPBaseCollection
Microsoft.SharePoint.SPFieldCollection
Espace de noms : Microsoft.SharePoint
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
Public Class SPFieldCollection _
Inherits SPBaseCollection
'Utilisation
Dim instance As SPFieldCollection
public class SPFieldCollection : SPBaseCollection
Remarques
Utilisez la propriété Fields de la classe de SPList ou de la classe SPListItem pour renvoyer la collection de champs d'une liste ou un élément de la liste. Utilisez la propriété Fields de la classe SPWeb pour renvoyer les champs dans le site Web et la propriété Fields de la classe SPContentType permet d'obtenir les champs qui sont associés au type de contenu. Pour créer un champ, utilisez la méthode Add .
Un indexeur permet de renvoyer un champ unique de la collection. Par exemple, en supposant que la collection a été affectée à une variable nommée collFields, utilisez collFields[index] dans C# ou collFields(index) dans Visual Basic, où index est le numéro d'index du champ dans la collection ou le nom d'affichage du champ.
Exemples
L'exemple de code suivant ajoute un nouveau champ de texte à la liste des annonces d'un site Web spécifié apparaissant dans l'affichage par défaut de la liste.
Dim webSite As SPWeb = SPContext.Current.Site.AllWebs("MySite")
Try
Dim list As SPList = webSite.GetList("Lists/Announcements/AllItems.aspx")
Dim fields As SPFieldCollection = list.Fields
Dim newFieldName As String = fields.Add("MyNewField", SPFieldType.Text, False)
Dim fieldAdd As SPField = fields.GetField(newFieldName)
Dim view As SPView = list.DefaultView
Dim viewFields As SPViewFieldCollection = view.ViewFields
viewFields.Add(fieldAdd)
view.Update()
Finally
webSite.Dispose()
End Try
using (SPWeb oWebsite = SPContext.Current.Site.AllWebs["MySite"])
{
SPList oList = oWebsite.GetList("Lists/Announcements/AllItems.aspx");
SPFieldCollection collFields = oList.Fields;
string strNewFieldName = collFields.Add("MyNewField", SPFieldType.Text, false);
SPField oField = collFields.GetField(strNewFieldName);
SPView oView = oList.DefaultView;
SPViewFieldCollection collViewFields = oView.ViewFields;
collViewFields.Add(oField);
oView.Update();
}
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.