2015-09-16 8 views
0

У меня есть CheckBoxList, который я иду через все пункты с помощью:Как пропустить ListItem с индексом 0 Еогеасп пункта CheckBoxList

foreach (ListItem item in this.checklist.Items)

мне было интересно, как я могу пропустить первый пункт в этом CheckBoxList (элемент с индексом 0).

+0

Можем ли мы увидеть ваш текущий код? –

+0

Используйте цикл for вместо foreach и установите начальный индекс равным 1. Предпросмотр выполняется по всей коллекции. Если вы хотите контролировать то, что он обрабатывает и что он не основан на индексе, вы используете цикл for. – Luminous

ответ

4

Linq должен помочь вам сделать трюк. Убедитесь в том, чтобы бросить коллекцию пунктов в типизированных коллекции, а затем вы можете использовать Skip пропустить первый пункт:

foreach (ListItem item in this.checklist.Items.Cast<ListItem>().Skip(1)) 
+0

Это аккуратное решение – Hayden

+0

Это отличный ответ. Что делать, если первый элемент не имеет индекса 0 или 1? Я имею в виду, что, если я не знаю, что такое индекс для первого элемента и просто хочу пропустить первый? – Shab

+0

Объект класса не указан, поэтому верно, что индекс является физическим положением в списке, поэтому ответ по-прежнему правильный. – Caverna

0

Я считаю, что один из способов сделать это:

bool isFirst = true; 

foreach (ListItem item in this.checklist.Items) 
{ 
    if (isFirst) { 
     isFirst = false; 
    } else { 
    // do checking 
    } 
} 
0

Попробуйте это.

foreach (ListItem item in this.checklist.Items) 
{ 
    if (item != this.checklist.Items[0]) { 
     // Do something 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^