I'm developing a windows form app with a page that lists invoices. Each invoice has multiple line items. The user should be able to edit an invoice or its line items and add a new invoice with multiple line items.

Option 1
Have a page with 2 datagrids. The top one lists the Invoices. The bottom shows the line items for the selected Invoice. Have a separate form that allows the user to add/edit Invoice and its line items.

Option 2:
Same as above except user can edit Invoice/Line Items through the grid itself. Have a separate form only for Add.

Option 3:
Somehow combine the lists and the form on the same page. Have an Edit button that loads the form with the Invoice and Line Items for edit. Else the same form is used for Add.

Any other ideas or is there an app that does something similar?

Thanks for your time.