Hola, creo que el problema se puede arreglar de dos formas:
1.- Si el problema es estético se podría agregar un updatepanel para actualizar solamente el grid. Si existe un guardado intermedio en base de datos, se podría mantener sin problemas.
2.- Si el problema es de rendimiento entonces si valdría la pena codificar en JScript para las operaciones básicas. En este caso no se podría tener un guardado intermedio en base de datos y se guardaría hasta el final.
Después de implementar cualquiera de estos mecanismos entonces se podría realizar los ajustes necesarios para cada una de las operaciones descritas.
Operaciones a validar: nueva partida, eliminar partida, modificar precio, modificar cantidad, descuento por partida, descuento venta, devolución por pago en efectivo, comisión por pago TDC.