Lo que mencionas es posible de hacer, pero el codigo excede con mucho lo que seria una simple duda.
Sugiero que comiences con algo sencillo, diseña un grid primero, luego utiliza los eventos para hacerlo editable, y al final añade la funcionalidad poco a poco para actualizarlo mediante LINQ enlazado a datos.
Tambien puedes revisar la pagina de
http://www.codeproject.com (en ingles), Ahi encontraras muchos ejemplos de codigo en diversos lenguajes de programacion, quizas encuentres algun codigo de grid, que sirva a lo que necesitas.
Saludos