DataSource will make every property of the array a column . I took the existing string[][] and performend the following linq on it:
dataGridView1.DataSource = (from arr in test
select new
{
Data = arr[0], Dog = arr[1] +
}
).ToArray();
The result was a datagridview with 2 columns (Data and Dog) with the respective values originating from the string[][].
Regarding my second question - I will open a new thread for that.