2010-08-29 3 views
3

У меня есть сетка, которая имеет 10 строк. Я поставил paging = true и pageSize = 2asp.net gridview paging

Теперь, когда я пытаюсь перейти через страницу по указанной ниже ссылке, как 1, 2, 3 , то я получаю ошибку что-то вроде необходимости события pageIndexChanged.

Я добавил это событие, но не понимаю, какой код следует добавить в это событие, чтобы перейти на следующую страницу, сохранив состояние на каждой странице?

Пожалуйста, дайте мне знать

ответ

1

Все, что вам нужно сделать, это установить PageIndex для GridView на новую страницу, и повторно связать элемент управления.

protected void gridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) 
{ 
    gridView1.PageIndex = e.NewPageIndex; 
    BindGrid(); // this is whatever method you call to bind your data. 
} 

EDIT:

Вы должны уже иметь обработчика событий для события DataBound в GridView:

protected void GridView1_DataBound(object sender, EventArgs e) 
{ 
    // lots of code here to do stuff with bound data. 
} 

Вместо того, чтобы "много кода", то есть это :

protected void GridView1_DataBound(object sender, EventArgs e) 
{ 
    BindGrid(); 
} 

Поэтому на странице PageIndexChanging событие, все, что вы делаете, - перевязывание данных (вызов той же логики для события DataBound).

Имеют смысл?

+0

GridView1.DataSource = dt; GridView1.DataBind(); это код, который я пишу для привязки сетки данных на какой-либо кнопке. поэтому я должен повторить так, и как, вы имеете в виду, что я должен работать над операцией базы данных здесь beacue dt id в событии Click Button и не доступен стороне – NoviceToDotNet

+0

Рефакторинг вашего кода таким образом, чтобы предоставить доступ к dt с помощью PageIndexChanging Eventhandler – citronas

+0

Как это сделать, чтобы я мог снова получить тот же dt, чтобы связать себя, я действительно начинаю с этого, пожалуйста, предложите мне структуру, которую я должен иметь. потому что у меня есть dt в кнопке. Должен ли я объявить dt вне стороны по всему миру, но в ответ на пост, это сделает таблицу данных emapty, что я должен делать? – NoviceToDotNet