Error while updating, editing the Grid view and saving the changes to Database

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • kiriti451
    New Member
    • Feb 2013
    • 1

    Error while updating, editing the Grid view and saving the changes to Database

    I have a SaveButton through which I am trying to add a new row, edit the row and save the changes. I am able to edit the existing row in the GridView. The problem is when I try to add a new row the existing row is getting modified. If I use `dt.Rows.Add(dr )` then new row is getting added after editing the existing row and saving.

    Below is my code:

    Code:
        private void btnSave_Click_1(object sender, EventArgs e)
            {
                int MyId;
                bool i = int.TryParse(txtID.Text, out MyId);
                da = new SqlDataAdapter();
                da.SelectCommand = new SqlCommand("select * from Measurement where ID = @ID",con);
                da.SelectCommand.Parameters.AddWithValue("@ID",MyId);
                SqlCommandBuilder cb = new SqlCommandBuilder(da);
                da.Fill(ds, "Measurement");
    
                if (String.IsNullOrEmpty(txtCellNo.Text.Trim()))
                {
                    MessageBox.Show("Please enter Cell Number");
                }
                else
                {
                    try
                    {  
                        if (ds.Tables["Measurement"].Rows.Count < 1 )
                        {
                            dt.Rows.Add();               
                        }
                        else
                        {
                            dr = ds.Tables["Measurement"].Rows[0];
                            dr["CellNumber"] = txtCellNo.Text.Trim();
                            dr["FirstName"] = txtFirstName.Text;
                            dr["LastName"] = txtLastName.Text;
                            dr["Shirt"] = txtShirt.Text;
                            dr["Pant"] = txtPant.Text;
                            dr["DueDate"] = txtDueDate.Text;
                            dr["Date"] = txtDate.Text;
    
                            cb.GetUpdateCommand();
                            da.Update(ds, "Measurement");
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
            }
    Note: I got the values from Gridview to Text Boxes using Gridview Selection changed event.
    Last edited by Rabbit; Feb 6 '13, 07:42 PM. Reason: Please use code tags when posting code.
Working...