В чем разница между RowIndex и DataItemIndex? - PullRequest
9 голосов
/ 17 мая 2011
Событие

In gridview’s RowDataBound имеет свойства e.Row.RowIndex и e.Row.DataItemIndex.Скажите, пожалуйста, в легко понятном ответе, в чем разница между ними?В какой ситуации мы должны использовать какой?

Ответы [ 4 ]

7 голосов
/ 17 мая 2011

Используйте свойство DataItemIndex, чтобы определить индекс DataItem в базовом наборе данных.
Используйте свойство RowIndex, чтобы определить индекс объекта GridViewRow в коллекции Rows элемента управления GridView.

4 голосов
/ 17 мая 2011

e.Row.RowIndex возвращает индекс строки, для которой в данный момент выполняется привязка

e.Row.DataItemIndex содержит все индексы данных строк, для которых в данный момент выполняется привязка.

3 голосов
/ 16 августа 2012

DataItemIndex - это индекс DataItem в базовом наборе данных.ДА

RowIndex - это индекс строки в базовом GridView.ДА

Но есть большая разница

Например, если у вашего girdview размер страницы 10 строк, тогда ваш RowIndex всегда 0-9 для каждой страницы, но DataItemIndexбудет отличаться, когда вы перейдете на другие страницы, такие как PageIndex 2,3,4 ... На странице 2 DataItemIndex будет между 10-19, но RowIndex по-прежнему 0-9.

2 голосов
/ 17 мая 2011

Ну, разница может быть в том, что e.Row.DataItemIndex применяется только к DataItem;означает, что это свойство применяется только к строкам данных, где «e.Row.RowIndex» может быть для datarow, строки заголовка и т. д.

RowIndex - текущая видимая строка в отображаемой таблице.DataItemIndex - это фактический индекс элемента;они оба будут показывать индекс записи в наборе текущих отображаемых записей.

...