I have multiple GridView on a page, and they are all pagable. I need to handle the paging in OnPageIndexChanging event, but I'd rather not write the same code for each GridView.

So how can I get the GridView object id from the sender? I'm trying to do something like the following....

protected void PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    GridView gridView = (GridView)sender.ID;

    gridView.PageIndex = e.NewPageIndex;
    gridView.DataBind();
}

This way I could call the same event handler for all the GridViews and not have to write a new even handler for each one? I'm just not sure how to get the ID of the GridView firing the event :(

any help appreciated!

有帮助吗?

解决方案

It's even simpler:

GridView gridView = (GridView)sender;

The sender argument is always the control that triggered the event.

其他提示

protected void PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    GridView gv= sender as GridView;

    if(gv!=null){
        gridView.PageIndex = e.NewPageIndex;
        gridView.DataBind();
    }
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top