How to Prevent SharePoint List or Columns from Deletion?
Scenario: We've a configuration list being used by a custom SharePoint application and we don't want to let the users to delete the configuration list in SharePoint. So how to prevent delete in SharePoint list?
The idea is: Set the "AllowDeletion" property of the SharePoint list or Library to false. These properties can be set programmatically using object mode code C# or PowerShell.
PowerShell script to Disable Delete on SharePoint List or Library:
"Delete this document library" or "Delete this list" link will go hidden under list settings!
We can use the C# code as well to disable delete option on SharePoint list and libraries:
Same trick applies to SharePoint list columns as well. Sett the field's "AllowDeletion" property to false to prevent the field from deletion. Here is an example: Typical SharePoint list columns will look like:
Lets prevent the column from deletion by setting "AllowDeletion" property to false.
PowerShell script to disable delete on list columns:
Now, the reverse: Delete Button Missing in SharePoint Column? Here is How to Delete them.
The idea is: Set the "AllowDeletion" property of the SharePoint list or Library to false. These properties can be set programmatically using object mode code C# or PowerShell.
PowerShell script to Disable Delete on SharePoint List or Library:
#Get the Web $web = Get-SPWeb "http://sharepoint.crescent.com/sites/pmo" #Get the List $list = $web.Lists["Design Documents"] #Set the "AllowDeletion" property $List.AllowDeletion=$false $List.Update()
"Delete this document library" or "Delete this list" link will go hidden under list settings!
We can use the C# code as well to disable delete option on SharePoint list and libraries:
using(SPSite site = new SPSite("http://sharepoint.crescent.com/sites/pmo")) { using(SPWeb web = site.OpenWeb()) { SPList list = web.Lists["Design Documents]; list.AllowDeletion = false; list.Update(); } }
Same trick applies to SharePoint list columns as well. Sett the field's "AllowDeletion" property to false to prevent the field from deletion. Here is an example: Typical SharePoint list columns will look like:
Lets prevent the column from deletion by setting "AllowDeletion" property to false.
PowerShell script to disable delete on list columns:
#Get the Web $web = Get-SPWeb "http://sharepoint.crescent.com/sites/pmo" #Get the List $list = $web.Lists["Design Documents"] #Get the column $column = $list.Fields["Category"] #Disable Delete $column.AllowDeletion = $false $column.Update() $web.Dispose()Output:
Now, the reverse: Delete Button Missing in SharePoint Column? Here is How to Delete them.
hi
ReplyDeleteCan i have event receiver to prevent deletion of column for a list ?
-Jiniv
[email protected]
Yes! from SharePoint 2010, We've FieldDeleting Event in List event receivers. Can utilize that too!
Delete