Ответ 1
Попробуйте использовать следующий код:
protected void grdView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
FillGrid();
grdView.PageIndex = e.NewPageIndex;
grdView.DataBind();
}
У меня есть gridview, который я использую для отображения результата набора данных. Проблема в том, что я использую пейджинг в нем. Но когда я нажимаю на странице #, он говорит, что я не обработал событие. Нужно ли мне переустановить набор данных???
Спасибо
Попробуйте использовать следующий код:
protected void grdView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
FillGrid();
grdView.PageIndex = e.NewPageIndex;
grdView.DataBind();
}
Попробуйте
В pageload
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
loadGrid();
}
}
В режиме просмотра страницы
private void loadGrid()
{
using (your_bankEntities context = new your_bankEntities()) //use your connection .edmx
{
var jmDados = (from jm in context.yourdbo orderby jm.your fieldkey
select new
{
jm.Field1,
jm.Field2,
jm.Field3,
jm.Field4,
........
jm.n
}).ToList();
GridView1.DataSource = jmDados;
GridView1.DataBind();
}
}
В режиме просмотра страницы
GridView1.PageIndex = e.NewPageIndex;
loadGrid();
В VB.net это не имеет большого значения с С#, вы просто удаляете точки с запятой в конце каждой строки
Private Sub myGridview_PageIndexChanging(sender As Object, e As GridViewPageEventArgs) Handles myGridview.PageIndexChanging
LoadGridView() //Call your method to load the data into the grid.
myGridview.PageIndex = e.NewPageIndex
myGridview.DataBind()
End Sub