Paging-enabled GridView disappears at postback

Discussion in 'ASP .Net' started by antonyliu2002@yahoo.com, Jan 31, 2007.

  1. Guest

    I've been googling for some time, and could not find the solution to
    this problem.

    I am testing the paging feature of gridview. I have a very simple web
    form on which the user can select a few fields to be included in the
    table, which is to be bound to the gridview.

    The web form looks like so (Don't worry about the stupidity of this
    web form for now.):

    Check stuffs you wanna include in the table:

    [] Customer ID
    [] Customer Last Name
    [] Customer First Name
    [] Customer Email
    [] Customer Phone

    [Click this button to show the table]

    [---- the paging-enabled gridview is right here ------]

    The gridview is declared like so:

    <asp:GridView ID="GridView1"
    EnableViewState="true"
    EnableSortingAndPagingCallbacks="true"
    DataSourceID="SqlDataSource1"
    runat="server"
    AllowPaging="True"
    AllowSorting="true">
    </asp:GridView>

    In the code-behind (in C#), I pass the programmatically created SQL
    select command to the SqlDataSource like so:

    SqlDataSource1.SelectCommand = theSelectCommandCreatedOnTheFly;

    Now, after the user clicks the button to create the customer report,
    the gridview is populated with customer data with the expected fields.

    But, when the paging index is clicked, the gridview disaapears. One
    short note from a blog says that gridview will disappear between
    postbacks. So, this might be the cause.

    I guess I don't need to implement a GridView1_OnPageIndexChanging
    method to handle the paging event since I don't think I am manually
    binding the gridview to the dataset.

    How do we handle this problem? Thanks.
    , Jan 31, 2007
    #1
    1. Advertising

  2. On Jan 31, 4:49 am, ""
    <> wrote:
    > I've been googling for some time, and could not find the solution to
    > this problem.
    >
    > I am testing the paging feature of gridview. I have a very simple web
    > form on which the user can select a few fields to be included in the
    > table, which is to be bound to the gridview.
    >
    > The web form looks like so (Don't worry about the stupidity of this
    > web form for now.):
    >
    > Check stuffs you wanna include in the table:
    >
    > [] Customer ID
    > [] Customer Last Name
    > [] Customer First Name
    > [] Customer Email
    > [] Customer Phone
    >
    > [Click this button to show the table]
    >
    > [---- the paging-enabled gridview is right here ------]
    >
    > The gridview is declared like so:
    >
    > <asp:GridView ID="GridView1"
    > EnableViewState="true"
    > EnableSortingAndPagingCallbacks="true"
    > DataSourceID="SqlDataSource1"
    > runat="server"
    > AllowPaging="True"
    > AllowSorting="true">
    > </asp:GridView>
    >
    > In the code-behind (in C#), I pass the programmatically created SQL
    > select command to the SqlDataSource like so:
    >
    > SqlDataSource1.SelectCommand = theSelectCommandCreatedOnTheFly;
    >
    > Now, after the user clicks the button to create the customer report,
    > the gridview is populated with customer data with the expected fields.
    >
    > But, when the paging index is clicked, the gridview disaapears. One
    > short note from a blog says that gridview will disappear between
    > postbacks. So, this might be the cause.
    >
    > I guess I don't need to implement a GridView1_OnPageIndexChanging
    > method to handle the paging event since I don't think I am manually
    > binding the gridview to the dataset.
    >
    > How do we handle this problem? Thanks.


    sound's like you don't bind your grid after postback

    Can you please tell us where you do bind it (sample code)?
    Alexey Smirnov, Jan 31, 2007
    #2
    1. Advertising

  3. Guest

    On Jan 31, 1:36 am, "Alexey Smirnov" <> wrote:
    > On Jan 31, 4:49 am, "">
    >
    > <> wrote:
    > > I've been googling for some time, and could not find the solution to
    > > this problem.

    >
    > > I am testing the paging feature of gridview. I have a very simple web
    > > form on which the user can select a few fields to be included in the
    > > table, which is to be bound to the gridview.

    >
    > > The web form looks like so (Don't worry about the stupidity of this
    > > web form for now.):

    >
    > > Check stuffs you wanna include in the table:

    >
    > > [] Customer ID
    > > [] Customer Last Name
    > > [] Customer First Name
    > > [] Customer Email
    > > [] Customer Phone

    >
    > > [Click this button to show the table]

    >
    > > [---- the paging-enabled gridview is right here ------]

    >
    > > The gridview is declared like so:

    >
    > > <asp:GridView ID="GridView1"
    > > EnableViewState="true"
    > > EnableSortingAndPagingCallbacks="true"
    > > DataSourceID="SqlDataSource1"
    > > runat="server"
    > > AllowPaging="True"
    > > AllowSorting="true">
    > > </asp:GridView>

    >
    > > In the code-behind (in C#), I pass the programmatically created SQL
    > > select command to the SqlDataSource like so:

    >
    > > SqlDataSource1.SelectCommand = theSelectCommandCreatedOnTheFly;

    >
    > > Now, after the user clicks the button to create the customer report,
    > > the gridview is populated with customer data with the expected fields.

    >
    > > But, when the paging index is clicked, the gridview disaapears. One
    > > short note from a blog says that gridview will disappear between
    > > postbacks. So, this might be the cause.

    >
    > > I guess I don't need to implement a GridView1_OnPageIndexChanging
    > > method to handle the paging event since I don't think I am manually
    > > binding the gridview to the dataset.

    >
    > > How do we handle this problem? Thanks.

    >
    > sound's like you don't bind your grid after postback
    >
    > Can you please tell us where you do bind it (sample code)?- Hide quoted text -
    >


    OK, thanks a lot. I actually mentioned it in my original post. I have
    a SqlDataSource control and the GridView is bound to it in the
    declaration. I repeat the GridView declaration here:

    <asp:GridView ID="GridView1"
    EnableViewState="true"
    EnableSortingAndPagingCallbacks="true"
    DataSourceID="SqlDataSource1"
    runat="server"
    AllowPaging="True"
    AllowSorting="true">
    </asp:GridView>

    In the code behind, the only thing I programmatically do is to assign
    the select command to SqlDataSource1 like so:

    SqlDataSource1.SelectCommand = theSelectCommandCreatedOnTheFly;

    In other words, I don't have anything in code-behind that mannually
    binds the data to the gridview, nothing in my code-behind is like
    getting a DataSet, SqlDataAdapter, Fills the DataSet, DataBind the
    GridView.

    That's why I also mentioned that I probably don't have to implement a
    method GridView1_OnPageIndexChanging since I am not manually binding
    the GridView. I might be wrong, but please advise. Thanks again.
    , Jan 31, 2007
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Gabor
    Replies:
    3
    Views:
    616
    Jacob Yang [MSFT]
    Aug 26, 2003
  2. Roger
    Replies:
    0
    Views:
    962
    Roger
    Dec 28, 2004
  3. Phil Johnson

    Hide footer on gridview with paging enabled

    Phil Johnson, Mar 12, 2008, in forum: ASP .Net
    Replies:
    2
    Views:
    5,151
    Phil Johnson
    Mar 12, 2008
  4. Leonard

    DataGrid Disappears After Paging

    Leonard, Aug 17, 2003, in forum: ASP .Net Datagrid Control
    Replies:
    3
    Views:
    229
    Stevie_mac
    Aug 17, 2003
  5. Mike N.
    Replies:
    0
    Views:
    233
    Mike N.
    Aug 2, 2008
Loading...

Share This Page