I prefer convert it to datatable first like follow demo,
hope it help you
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
string [][] array=new string[3][];
array[0] = new string[] {"Column One", " Item One", " Item Two" };
array[1] = new string[] {"Column Two", " Item One", " Item Two","Item three"};
array[2] = new string[] {"Column Three", " Item One", " Item Two"};
DataTable TB = new DataTable();
for (int i = 0; i < array.Length; i++)
{
TB.Columns.Add(array[ i ][0].ToString(), typeof(string));
}
for (int i = 1; i < array[0].Length; i++)
{
TB.Rows.Add(array[0][ i ].ToString(), array[1][ i ].ToString(), array[2][ i ].ToString());
}
this.dataGridView1.DataSource = TB;
}
}
}