How to: Prevent Row Addition and Deletion in the Windows Forms DataGridView Control
Sometimes you will want to prevent users from entering new rows of data or deleting existing rows in your DataGridView control. The AllowUserToAddRows property indicates whether the row for new records is present at the bottom of the control, while the AllowUserToDeleteRows property indicates whether rows can be removed. The following code example uses these properties and also sets the ReadOnly property to make the control entirely read-only.
There is support for this task in Visual Studio. Also see How to: Prevent Row Addition and Deletion in the Windows Forms DataGridView Control Using the Designer.