ASPxGridView не применяет условие фильтра к базовому источнику данных.Таким образом, после того, как фильтрация завершена, источник данных сетки имеет тот же счетчик записей, что и раньше.Возможное решение этой проблемы - пройти через gridRows и получить необходимые значения KeyField или объекты Row:
object[] rows = new object[ASPxGridView1.VisibleRowCount];
for(int i = 0; i < ASPxGridView1.VisibleRowCount; i++) {
rows[i] = ASPxGridView1.GetRowValues(i, ASPxGridView1.KeyFieldName);
//or
rows[i] = ASPxGridView1.GetRow(i);
}