Что делает arraylist IndexOf в asp.net/c#? - PullRequest
1 голос
/ 12 марта 2011

У меня проблемы с пониманием следующего кода:

if (IsPostBack)
    {
        int CheckBoxIndex;
        ArrayList CheckBoxArray;
        bool CheckAllWasChecked=false;
        CheckBox chkAll = (CheckBox)GridView1.HeaderRow.Cells[0].FindControl("chkAll"); //chkAll is the id for checkbox on gridview
        string checkAllIndex = "chkAll-" + GridView1.PageIndex;
        if (chkAll.Checked)
        {                
            if (CheckBoxArray.IndexOf(checkAllIndex) == -1)
            {
                CheckBoxArray.Add(checkAllIndex);
            }
        }
        else 
        {
            if (CheckBoxArray.IndexOf(checkAllIndex) != -1)
            {
                CheckBoxArray.Remove(checkAllIndex);
                CheckAllWasChecked = true;
            }
        }

когда sampleArrayList.indexof(objectname) возвращает -1?
Не понимаю?

Пожалуйста, помогите мне!
Спасибо в ожидании

Ответы [ 3 ]

2 голосов
/ 12 марта 2011

Когда sampleArrayList не имеет элемента имени объекта sampleArrayList.IndexOf (cb1) вернет -1

1 голос
/ 12 марта 2011

IndexOf (...) возвращает позицию искомого элемента в коллекции (например, sampleArrayList).Если ваш список не содержит элемент, который вы искали, я верну '-1'

в вашем примере:

if (sampleArrayList.IndexOf (cb1) == -1) {

сделать что-нибудь;}

если у вас нет cb1, тогда «сделайте что-нибудь».

1 голос
/ 12 марта 2011

IndexOf возвращает индекс (позицию) объекта в ArrayList, если он найден, или -1, если его нет в ArrayList.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...