Lendo a partir do arquivo .txt, exportando dados para o DataGridView

Eu sei que esta é uma pergunta risível, mas Deus, eu passei todo o meu último dia batendo com a minha cabeça e isso simplesmente não vai funcionar! O maldito professor nem mencionou nada sobre a importação de dados para o DataGridView!

Eu tenho uma tarefa de casa do Windows Forms C #: eu tenho que ler dados de um.txt (usuários) arquivar e colá-lo em umDataGridView tabela em c # Microsoft Visual Studio 2012. Os dados nousers.txt arquivo é algo parecido com os delimitadores TAB:

-------------------------------------------------
    ID    Name  Surname Telephone VIP Age Balance
-------------------------------------------------
    0001  John  Killer  1-500-300  0  13  2272
    0002  Name  Surname 1-500-200  0  27  225
    0003  Martin King   1-500-400  1  41  1070

Ignore os nomes das etiquetas (ID, Nome, Sobrenome ...), eu os escrevi apenas para maior clareza, o arquivo real tem apenas os dados brutos do usuário.

Agora, eu criei uma classe anteriormenteUsers, que possui estes campos:

identidadeNomeSobrenomeTelefoneVIPItens compradosPreço

e, em seguida, criou um DataGridView (usersDataGridView) e importou os campos da classeUsers nisso.

OK, algoritmicamente esta é uma tarefa fácil, não é?

Minha ideia era fazer o seguinte: ler o conteúdo do arquivo com umStreamReader, salvando cada linha em uma string e dividindo a string em partes usando\t como um delimitador comString.Split.

No entanto, uma vez que eu tenho essas linhas divididas ... bem, eu basicamente não tenho idéia de como importá-los para o DataGridView (eu "sei" que deve ser como umDataSource mas ... a interface do Visual Studio 2012 parece muito "complicada" para eu deixar-me descobrir como posso apontar uma string ou qualquer tipo de dado que seja como um DataSource).

Minhas lamentáveis ​​tentativas me levaram ao seguinte:

Tentativa 1:

public void Test_1()
{
    string filePath = string.Format("{0}/databases/{1}", AppDomain.CurrentDomain.BaseDirectory, "user_db.txt");

    string[] textData = System.IO.File.ReadAllLines(filePath);
    string[] headers = textData[0].Split('\t');

    DataTable dataTable1 = new DataTable();

    foreach (string header in headers)
        dataTable1.Columns.Add(header, typeof(string), null);

    for (int i = 1; i < textData.Length; i++)
        dataTable1.Rows.Add(textData[i].Split('\t'));

    //Set the DataSource of DataGridView to the DataTable
    promotionsDataGridView.DataSource = dataTable1;
}

Tentativa 2:

public void ReadFromFile()
{
    string delimeter = "\t";
    string tableName = "BooksTable";
    string fileName = string.Format("{0}/databases/{1}", AppDomain.CurrentDomain.BaseDirectory, "bigtest.sql");

    DataSet dataset = new DataSet();
    StreamReader sr = new StreamReader(fileName);

    dataset.Tables.Add(tableName);
    dataset.Tables[tableName].Columns.Add("InventoryID");
    dataset.Tables[tableName].Columns.Add("Brand");
    dataset.Tables[tableName].Columns.Add("Category");
    dataset.Tables[tableName].Columns.Add("Description");
    dataset.Tables[tableName].Columns.Add("Promotions");
    dataset.Tables[tableName].Columns.Add("Quantity");
    dataset.Tables[tableName].Columns.Add("Price");

    string allData = sr.ReadToEnd();
    string[] rows = allData.Split("\r".ToCharArray());

    foreach (string r in rows)
    {
        string[] items = r.Split(delimeter.ToCharArray());
        dataset.Tables[tableName].Rows.Add(items);
    }
    this.productsDataGridView.DataSource = dataset.Tables[0].DefaultView;
}

No entanto, eu continuo recebendo algum erro de besteira como

O tamanho do array de entrada é maior que o

Desde que eu literalmente não tenho experiência comDataGridView&nbsp;Eu acho que tenho alguns erros terríveis no nível algorítmico, certo ?!

Por favor, qualquer um me ajude! Eu li, copiei, colei, depilei e depurei de 20 edições diferentes sobre um tópico similar e ainda estou no nada!

Qual é oapropriado&nbsp;maneira de ler dados de um.txt&nbsp;arquivo, em seguida, colá-lo para um DataGridView?

Qualquer ajuda ou respostas são profundamente apreciadas !!