Mettre des données GridView dans un DataTable

Je suis en train d'enregistrer un GridView à un DataTable.

J'ai un code qui devrait en théorie faire, mais je reçois ce message d'erreur:

Colonne 0 n'existe pas

Voici mon code:

protected void Button1_Click(object sender, EventArgs e)
    {
        DataTable dt = new DataTable();
        for (int j = 0; j < GridView1.Rows.Count; j++)
        {
            DataRow dr;
            GridViewRow row = GridView1.Rows[j];
            dr = dt.NewRow();
            for (int i = 0; i < row.Cells.Count; i++)
            {
                dr[i] = row.Cells[i].Text;
            }

            dt.Rows.Add(dr);
        }
    }

Toute aide sur la façon de résoudre ce problème?

source d'informationauteur BlahWoo