Doh, I've just resolved the problem a few hours ago in this way:

vb Code:
  1. dgvGriglia.AutoGenerateColumns = True
  2. Dim dt As New DataTable
  3. dt.Columns.Add(xAdd_ColToDT("Column0", "Header of column0"))
  4. dt.Columns.Add(xAdd_ColToDT("Column1", "Header of column1"))
  5. ...
  6. dt.Columns.Add(xAdd_ColToDT("ColumnN", "Header of columnN."))
  7.     For Each origa As DataRow In ds.Tables(0).Select(cFilter)
  8.       Dim oNewRiga As DataRow = dt.NewRow
  9.       oNewRiga.Item(0) = origa.Item("FIELD0")
  10.       oNewRiga.Item(1) = origa.Item("FIELD1")
  11.       dt.Rows.Add(oNewRiga)
  12.     Next
  13.     ds.Tables.Add(dt)
  14.     dgvGriglia.DataSource = ds.Tables(1)
attention: dgvGriglia.DataSource = ds.Tables(1) is not an error because the table 0 is the source table which I manipulate in this procedure.
I resolved anyway, but do you think could be a good solution??
Thank you!