How To Update A Column In A DataGrid Using C#.NET?
I am getting InvalidCastException as (Specified cast is not
valid) while updating 2nd column in a datagrid?
Id,firstname,lastname are the three columns of my datagrid
respectively. I wanted to edit the second column(lastname)
and update it. I did the following code in DataGrid's
updatecommand(),but failed to update !
Int varid=(int)DataGrid1.DataKeys[e.Item.ItemIndex];
TextBox lnm=(TextBox)e.Item.Cells[2].Controls[0]; string
str=lnm.Text ; SqlCommand cmd=new SqlCommand("update
customer set lastname='" + str + "' where id=" + varid
+ "",con); cmd.ExecuteNonQuery(); DataGrid1.EditItemIndex=-
1; DataGrid1.DataBind();
Answer Posted / pk
public void DataGrid1_Update(Object sender,
DataGridCommandEventArgs e)
{
string unitprice =
((TextBox)e.Item.Cells[3].Controls[0]).Text;
string quantity =
((TextBox)e.Item.Cells[4].Controls[0]).Text;
string discount =
((TextBox)e.Item.Cells[5].Controls[0]).Text;
int orderid =
(int)DataGrid1.DataKeys[(int)e.Item.ItemIndex];
string productid =
((TextBox)e.Item.Cells[2].Controls[0]).Text;
try
{
string updateCmd = "UPDATE [Order Details] SET
UnitPrice = @UnitPrice,"
+ "Quantity = @Quantity, Discount = @Discount
where OrderId =@OrderId and ProductId=@ProductId";
SqlConnection cn = new SqlConnection(strConn);
SqlCommand myCommand = new SqlCommand(updateCmd,
cn);
myCommand.Parameters.Add(new
SqlParameter("@UnitPrice", Convert.ToDecimal(unitprice)));
myCommand.Parameters.Add(new
SqlParameter("@Quantity", Convert.ToInt16(quantity)));
myCommand.Parameters.Add(new
SqlParameter("@Discount", Convert.ToInt16(discount)));
myCommand.Parameters.Add(new
SqlParameter("@OrderId", orderid));
myCommand.Parameters.Add(new
SqlParameter("@ProductId", Convert.ToInt16(productid)));
cn.Open();
myCommand.ExecuteNonQuery();
DataGrid1.EditItemIndex = -1;
BindGrid();
}
catch (Exception ex)
{
lblError.Visible = true;
lblError.Text = (ex.Message);
}
| Is This Answer Correct ? | 2 Yes | 5 No |
Post New Answer View All Answers
What is the difference between dataset and datatable?
How to bind the controls(best practice) comboboxes to the data in the dataset?
What is disconnected data?
What is ado.net in mvc?
Which is the best method to get two values from the database?
What are all features of ADO.Net?
Name which operations can you not perform on an ado.net dataset?
Define bubbled event?
What are all the commands used with Data Adapter?
What is the use of sqldatareader class?
Define the data provider classes that is supported by ado.net?
What are dataproviders?
List all the steps in order, to access a database through ado.net?
What do you mean by performing asynchronous operation using command object?
How will you fill the gridview by using datatable object at runtime?