Я работаю с DataGridView в форме и получаю сообщение об ошибке. Это мой DataGridView:

Как видите, есть строка для добавления значений, и я добавляю следующие четыре строки:
- (DB) 335T1613 0,5
- (DB) 335T1642 3,87
- (DB) 001122 0,9
- (DB) 335T1644 3,71
И мой DataGridView в порядке:

Но если я снова скопирую эти данные, у меня будет 2 пустых строки ...

Итак, проблема в том, как мне избежать этого?
Это мой код, и, конечно, я должен получить собственность AllowUserAddRows в true:
private void PasteClipboard()
{
System.Diagnostics.Debug.WriteLine("Inicio de PasteClipboard.");
try
{
string s = Clipboard.GetText();
string[] lines = s.Split('\n');
int iFail = 0, iRow = dataGridViewTennetPaint.CurrentCell.RowIndex;
int iCol = dataGridViewTennetPaint.CurrentCell.ColumnIndex;
DataGridViewCell oCell;
dataGridViewTennetPaint.Rows.Add(lines.Length); //before was lines.Lenght - 1
foreach (string line in lines)
{
string[] sCells = line.Split('\t');
for (int i = 0; i < sCells.GetLength(0); ++i)
{
if (iCol + i < this.dataGridViewTennetPaint.ColumnCount)
{
oCell = dataGridViewTennetPaint[iCol + i, iRow];
if (!oCell.ReadOnly)
{
if (oCell.Value == null || oCell.Value.ToString() != sCells[i])
{
oCell.Value = Convert.ChangeType(sCells[i],
oCell.ValueType);
}
else
iFail++;
}
}
else
{ break; }
}
iRow++;
if (iFail > 0)
MessageBox.Show(string.Format("{0} updates failed due" +
" to read only column setting", iFail));
}
}
catch (FormatException)
{
MessageBox.Show("The data you pasted is in the wrong format for the cell");
return;
}
DataGridViewRow row = new DataGridViewRow();
row.CreateCells(dataGridViewTennetPaint);
row.Cells[0].Value = "";
row.Cells[1].Value = "";
row.Cells[2].Value = "";
dataGridViewTennetPaint.Rows.Add(row);
System.Diagnostics.Debug.WriteLine("Fin PasteClipboard.");
}