У меня есть вид сетки с включенной подкачкой страниц и текстовое поле, в котором пользователь может ввести строковое значение, используемое для выбора строки в виде сетки со столбцом, который соответствует строковому значению.Данные столбца не являются первичным ключом и не перечислены в названиях данных.
Я нашел пример, который решает проблему для просмотра таблицы без пейджинга.В обработчике событий для элемента управления кнопки, связанного с текстовым полем:
protected void SelFrame_Clicked(object sender, EventArgs e)
{
string requestedFrame = tbSelFrame.Text;
if (requestedFrame != "")
{
int index = (from DataControlField col in gvFrame.Columns
where col.HeaderText == "Name"
select gvFrame.Columns.IndexOf(col)).FirstOrDefault();
var query = from GridViewRow row in gvFrame.Rows
where row.Cells[index].Text == requestedFrame
select row;
GridViewRow result = query.FirstOrDefault();
if (result != null)
{
int selectedIndex = result.DataItemIndex;
if (selectedIndex > -1)
gvFrame.SelectedIndex = selectedIndex;
}
}
}
Как отмечалось, когда искомое значение находится на невидимой странице вида сетки, эта строка возвращает ноль:
GridViewRow result = query.FirstOrDefault();
Как найти подходящую строку в виде сетки с включенной подкачкой?