In CRM some times you need to add custom pages to add functionality that does not natively exist. Here is an example of a product edit grid iframed in the opportunity entity. (sorry not giving the code away on this one).

Edit Grid on opportunity, to edit custom product entity:

 With this grid there is the ability to add products and delete products and on save the totals are posted immediately to the opportunity.  This can be done with CRM native entities too. like quote product up to quote.  This makes adding products faster without opening up new windows.

This is a C#/aspx page that is hosted in the ISV folder on CRM webserver.  The application behind the scenes updates the opportunity highlighted fields on save of the products.  On the front side the fields on opportunity are read only so to keep from requiring page refresh the save button takes the calculated fields and updates the fields for display on the opportunity.  There is no need to save the opportunity for the highlighted field changes as the save of products has already updated the opportunity fields through the code behind the scenes.