Share via


SPContentType.ParentList - Propriété

Obtient un objet SPList qui représente la liste dans lequel se trouve cet objet SPContentType .

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

Syntaxe

'Déclaration
Public ReadOnly Property ParentList As SPList
    Get
'Utilisation
Dim instance As SPContentType
Dim value As SPList

value = instance.ParentList
public SPList ParentList { get; }

Valeur de propriété

Type : Microsoft.SharePoint.SPList
La liste dans lequel se trouve ce type de contenu.

Remarques

La valeur de cette propriété est une référence Null (Rien dans Visual Basic) pour un type de contenu de site. Pour un type de contenu de liste, la valeur est un objet SPList qui représente une liste ou bibliothèque de documents à laquelle le type de contenu a été ajouté. Pour plus d'informations, consultez Site and List Content Types.

Exemples

L'exemple suivant se compose d'une méthode, DeleteListContentType. Comme son nom l'indique, la méthode vise à supprimer un type de contenu dans une liste. Il accepte un objet SPContentType comme son seul argument. Avant de procéder à sa tâche, la méthode vérifie la valeur de la propriété ParentList pour vérifier que l'objet qui a été passé en tant qu'argument est inclus dans la collection de type de contenu de la liste. Si la propriété renvoie une valeur de une référence Null (Rien dans Visual Basic) , le type de contenu n'appartient pas à la liste et la méthode retourne. Si la propriété renvoie un objet SPList , la méthode utilise l'objet ait terminé sa tâche.

Function DeleteListContentType(ByRef ct As SPContentType) As Boolean
  ' Make sure we have a content type.
  If ct Is Nothing Then
     Throw New ArgumentException("Content type is null.")
  End If

  ' Make sure we have a list content type.
  If ct.ParentList Is Nothing Then
     Return False
  End If

  ' Delete list items of this content type.
  DeleteListItems(ct.ParentList, ct.Id)

  ' Check for read-only and sealed.
  If ct.ReadOnly Then
     ct.ReadOnly = False
  End If
  If ct.Sealed Then
     ct.Sealed = False
  End If

  ' Delete it.
  ct.Delete()
  Return True
End Function

Sub DeleteListItems(ByRef list As SPList, ByVal id As SPContentTypeId)
   Dim items As SPListItemCollection =  list.Items 
   Dim count As Integer =  items.Count  'Count will change
   Dim i As Integer
   For  i = count -1 To  0 Step  i - 1
      Dim item As SPListItem =  items(i) 
      If item.ContentType.Id = id Then
         item.Delete()
      End If
   Next
   list.Update()
End Sub
static bool DeleteListContentType(SPContentType ct)
{
   // Make sure we have a content type.
   if (ct == null)
      throw new ArgumentException("Content type is null.");

   // Make sure we have a list content type
   if (ct.ParentList == null)
      return false;

   // Delete list items of this content type.
   DeleteListItems(ct.ParentList, ct.Id);

   // Check for read-only and sealed.
   if (ct.ReadOnly)
      ct.ReadOnly = false;
   if (ct.Sealed)
      ct.Sealed = false;

   // Delete it.
   ct.Delete();
   return true;
}

static void DeleteListItems(SPList list, SPContentTypeId id)
{
   SPListItemCollection items = list.Items;
   int count = items.Count;  //Count will change
   for (int i = count -1; i >= 0; i--) 
   {
      SPListItem item = items[i];
      if (item.ContentType.Id == id)
         item.Delete();
   }
   list.Update();
}

Voir aussi

Référence

SPContentType classe

SPContentType - Membres

Microsoft.SharePoint - Espace de noms

Autres ressources

Introduction to Content Types

Site and List Content Types

Base Content Type Hierarchy