Метод SPListItemCollection.Delete
Удаляет элемент по указанному индексу в коллекции.
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
Public Sub Delete ( _
iIndex As Integer _
)
'Применение
Dim instance As SPListItemCollection
Dim iIndex As Integer
instance.Delete(iIndex)
public void Delete(
int iIndex
)
Параметры
iIndex
Тип: System.Int3232-разрядное целое число, указывающее индекс.
Замечания
Метод Delete удаляет элемент по его индексу в коллекции. Чтобы удалить элемент по Идентификатору, используйте метод DeleteItemById .
Данный метод возвращает исключение ArgumentOutOfRangeException , если указанный индекс находится вне диапазона допустимых индексов коллекции.
Примеры
Следующий пример кода удаляет все элементы из указанного списка поле целое число будет меньше 70 или текстовое поле значение равно None.
For цикл в примере счетчики вниз (intindex-- ) вместо вверх (intindex++ ), поскольку элементы удаляются и уменьшается количество элементов с каждого фрагмента.
Dim site As SPWeb = SPControl.GetContextWeb(Context)
Dim srcList As SPList = site.Lists("List_Name")
Dim listItems As SPListItemCollection = srcList.Items
Dim intIndex As Integer
For intIndex = listItems.Count - 1 To 0 Step -1
If Convert.ToInt32(listItems(intIndex)("Field1_Name")) < 70 _
OrElse listItems(intIndex)("Field2_Name").ToString() = "None" Then
listItems.Delete(intIndex)
End If
Next i
SPWeb oWebsite = SPContext.Current.Web;
SPList oList = oWebsite.Lists["List_Name"];
SPListItemCollection collListItems = oList.Items;
for (int intIndex = collListItems.Count - 1; intIndex > -1; intIndex--)
{
if (Convert.ToInt32(collListItems[intIndex]["Field1_Name"]) < 70 ||
collListItems[intIndex]["Field2_Name"].ToString() == "None")
{
collListItems.Delete(intIndex);
}
}