Подтвердить что ты не робот

PageIndexChanging в GridView в ASP.NET

У меня есть gridview, который я использую для отображения результата набора данных. Проблема в том, что я использую пейджинг в нем. Но когда я нажимаю на странице #, он говорит, что я не обработал событие. Нужно ли мне переустановить набор данных???

Спасибо

4b9b3361

Ответ 1

Попробуйте использовать следующий код:

protected void grdView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    FillGrid();
    grdView.PageIndex = e.NewPageIndex;
    grdView.DataBind();
}

Ответ 2

Попробуйте

В 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();

Ответ 3

В 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