Datagrid Editcommand for only row on 2nd page takes user back to 1st page / 1st record



  • Step 1:  In my datagrid, if I click on the only row on the second page, it takes me to the first record on the first page.

    Step 2:  If I add a second row to the second page, then click "Edit" on the top / first record on the second page, I can now edit that record that I couldn't edit in Step 1.

    Here's the Editcommand code:

    DataGrid1.EditItemIndex = e.Item.ItemIndex

    SqlDataAdapter1.Fill(Dssqla1, "Resource Table")
    SqlDataAdapter2.Fill(Dssqlb1, "Resource Table - Combo Codes")
    SqlDataAdapter3.Fill(Dssqlc1, "Signature_Authority_Names")

    DataGrid1.DataBind()

    Things I'm looking at are:
    1.  The original datagrid on the EditCommand event simply populated dropdownlists in several of the fields in the datagrid.  This worked fine, but the width allotment wasn't enough.  These ddls were small and difficult for users to read.

    2.  The new datagrid had the EditItem template changed and all three dropdownlists were placed in the same column to allow for the dropdownlists to have enough width and ample font size.  It made the datagrid better from a UI perspective.

    I can't see anything different in the datagrid EditCommand in either version of the code.  The ItemDataBound routine is the same too.

    I can look at the record in question (only record on second page) and paste the following data in a label of:

    lblItemIndex.Text = e.Item.ItemIndex.ToString()       lblItemIndex &= " " & DataGrid1.CurrentPageIndex
    lblItemIndex.Text &= " " & e.Item.Cells(15).Text.toString()

    ...this label shows that I'm in fact clicking on that only record on the second page, but still the Datagrid goes to the first record on the first page.  If I add another record, so now the second page has two records, I can then edit this particular record on the second page.


Log in to reply